Ext.BLANK_IMAGE_URL = 'JSFW/ext/resources/images/default/s.gif';
Ybz = {
	version : "1.0.1",
	cookieName : "Yibenzhang"
}
Ybz.Year = new Ext.data.SimpleStore( {
	fields : ['value', 'text'],
	data : [['2008', '2008'], ['2009', '2009']]
});
Ybz.Month = new Ext.data.SimpleStore( {
	fields : ['value', 'text'],
	data : [['1', '1'], ['2', '2'], ['3', '3'], ['4', '4'], ['5', '5'],
			['6', '6'], ['7', '7'], ['8', '8'], ['9', '9'], ['10', '10'],
			['11', '11'], ['12', '12']]
});
Ybz.YearComb = new Ext.form.ComboBox( {
	store : Ybz.Year,
	emptyText : '年',
	mode : 'local',
	readOnly : true,
	value : (new Date()).YEAR,
	triggerAction : 'all',
	allowBlank : false,
	valueField : 'value',
	displayField : 'text'
});
Ybz.MonthComb = new Ext.form.ComboBox( {
	store : Ybz.Month,
	emptyText : "月",
	mode : 'local',
	readOnly : true,
	value : (new Date()).Month,
	triggerAction : 'all',
	allowBlank : false,
	valueField : 'value',
	displayField : 'text'
});
Ybz.heart = [['wx.gif', "<img src='images/heart/wx.gif' alt='微笑'>"],
		['dx.gif', "<img src='images/heart/dx.gif' alt='大笑'>"],
		['dy.gif', "<img src='images/heart/dy.gif' alt='得意'>"],
		['sh.gif', "<img src='images/heart/sh.gif' alt='衰'>"],
		['fn.gif', "<img src='images/heart/fn.gif' alt='愤怒'>"],
		['bs.gif', "<img src='images/heart/bs.gif' alt='鄙视'>"],
		['yun.gif', "<img src='images/heart/yun.gif' alt='晕'>"],
		['wq.gif', "<img src='images/heart/wq.gif' alt='委屈'>"],
		['am.gif', "<img src='images/heart/am.gif' alt='傲慢'>"],
		['se.gif', "<img src='images/heart/se.gif' alt='色'>"],
		['ng.gif', "<img src='images/heart/ng.gif' alt='难过'>"],
		['gg.gif', "<img src='images/heart/gg.gif' alt='尴尬'>"]];
Ybz.heartimg = "<img onclick='Ybz.heartImgclick(this)' name='wx.gif' src='images/heart/wx.gif' alt='微笑'>&nbsp;<img onclick='Ybz.heartImgclick(this)' name='dx.gif' src='images/heart/dx.gif' alt='大笑'>&nbsp;<img onclick='Ybz.heartImgclick(this)' name='dy.gif' src='images/heart/dy.gif' alt='得意'>&nbsp; <img onclick='Ybz.heartImgclick(this)' name='sh.gif' src='images/heart/sh.gif' alt='衰'> &nbsp; <img onclick='Ybz.heartImgclick(this)' name='fn.gif' src='images/heart/fn.gif' alt='愤怒'>&nbsp;<img onclick='Ybz.heartImgclick(this)' name='bs.gif' src='images/heart/bs.gif' alt='鄙视'>&nbsp; <img onclick='Ybz.heartImgclick(this)' name='yun.gif' src='images/heart/yun.gif' alt='晕'>  &nbsp; <img onclick='Ybz.heartImgclick(this)' name='wq.gif' src='images/heart/wq.gif' alt='委屈'>&nbsp;<img onclick='Ybz.heartImgclick(this)' name='am.gif' src='images/heart/am.gif' alt='傲慢'>&nbsp;<img onclick='Ybz.heartImgclick(this)' name='se.gif' src='images/heart/se.gif' alt='色'>&nbsp;<img onclick='Ybz.heartImgclick(this)' name='ng.gif' src='images/heart/ng.gif' alt='难过'>&nbsp;<img onclick='Ybz.heartImgclick(this)' name='gg.gif'  src='images/heart/gg.gif' alt='尴尬'>&nbsp;";
Ybz.heartImgclick = function(obj) {
	var c = Ext.get("cheart").dom;
	c.src = obj.src;
	c.alt = obj.alt;
	Ext.get("heart").dom.value = obj.name;
}
Ybz.renderRed = function(value) {
	return "<span style='color:red;font-weight:bold;'>" + value + "</span>";
}
Ybz.renderDate = function(value) {
	try {
		return value.format('Y-m-d');
	} catch (e2) {
		try {
			return (new Date(value)).format('Y-m-d');
		} catch (e2) {
			return value;
		}
	}
}
Ybz.renderHeart = function(value) {
	return "<img src='images/heart/" + value + "'>";
}
Ybz.renderIsHide = function(value) {
	if (value)
		return "<span style='color:red;font-weight:bold;'>是</span>";
	else
		return "<span style='color:green;font-weight:bold;'>否</span>";
}
Ybz.getCookie = function() {
	return Ext.decode(Ybz.Cookies.get(Ybz.cookieName));
}
Ybz.clearCookie = function() {
	Ybz.Cookies.clear(Ybz.cookieName);
}
Ybz.setTheme = function(theme) {
	if (!theme || theme == "") {
		Ext.util.CSS.swapStyleSheet("theme", "");
		Ext.util.CSS.swapStyleSheet("theme", "");
		theme = "";
	} else
		Ext.util.CSS.swapStyleSheet("theme", "JsFw/ext/resources/css/xtheme-"
				+ theme + ".css");
	if (Ybz.getCookie() != null && theme != Ybz.getCookie().Theme) {
		Ext.Ajax.request( {
			url : 'Accountbook.aspx?m=theme&UserId=' + Ybz.getCookie().UserId
					+ '&theme=' + theme,
			success : function(response) {
				;
			},
			failure : function(response) {
				;
			},
			params : {}
		});
	}
}
Ybz.setTheme2 = function() {
	if (Ybz.getCookie() != null) {
		var theme = Ybz.getCookie().Theme;
		if (!theme || theme == "") {
			Ext.util.CSS.swapStyleSheet("theme", "");
			Ext.util.CSS.swapStyleSheet("theme", "");
			theme = "";
		} else
			Ext.util.CSS.swapStyleSheet("theme",
					"JsFw/ext/resources/css/xtheme-" + theme + ".css");
	}
}
Ybz.Headerbar = new Ext.Toolbar();
Ybz.Header = function() {
	var tb = Ybz.Headerbar;
	tb.render('header');
	tb.add('->', {
		id : 'Header-login',
		text : '换账皮',
		iconCls : 'skin',
		menu : Ybz.themeMenu,
		tooltip : {
			title : '换张皮',
			text : '我是一只披着羊皮的狼~~~',
			autoHide : true
		}
	});
	tb.add('-', {
		id : 'Header-login',
		text : '登陆',
		iconCls : 'login',
		tooltip : {
			title : '今天您记账了吗?',
			text : '别忘了赶快记账~~',
			autoHide : true
		},
		handler : function() {
			Ybz.User.Login();
		}
	});
	tb.add( {
		id : 'Header-user',
		text : '在线',
		iconCls : 'member',
		hidden : true,
		tooltip : {
			title : '今天您记账了吗?',
			text : '别忘了赶快记账~~',
			autoHide : true
		},
		handler : function() {
			Ybz.User.Profiles();
		}
	});
	tb.add('-', {
		id : 'Header-reg',
		text : '注册',
		iconCls : 'reg',
		tooltip : {
			title : '马上注册',
			text : '立即拥有自己的一本帐,分享你的账本~~',
			autoHide : true
		},
		handler : function() {
			Ybz.User.Reg();
		}
	});
	tb.add( {
		id : 'Header-logout',
		text : '退出',
		iconCls : 'logout',
		hidden : true,
		handler : function() {
			Ybz.User.Logout();
		}
	});
	return tb
}
Ybz.themeMenu = new Ext.menu.Menu( {
	items : [ {
		text : '淡淡的蓝',
		value : '',
		group : 'skin',
		checked : true,
		checkHandler : function(item, checked) {
			Ybz.setTheme("");
		}
	}, {
		text : '灰色',
		value : 'gray',
		group : 'skin',
		checked : false,
		checkHandler : function(item, checked) {
			Ybz.setTheme(item.value)
		}
	}, {
		text : '黑色',
		value : 'black',
		group : 'skin',
		checked : false,
		checkHandler : function(item, checked) {
			Ybz.setTheme(item.value)
		}
	}, {
		text : '黄昏',
		value : 'darkgray',
		group : 'skin',
		checked : false,
		checkHandler : function(item, checked) {
			Ybz.setTheme(item.value)
		}
	}, {
		text : '绿色',
		value : 'olive',
		group : 'skin',
		checked : false,
		checkHandler : function(item, checked) {
			Ybz.setTheme(item.value)
		}
	}, {
		text : '紫色',
		value : 'purple',
		group : 'skin',
		checked : false,
		checkHandler : function(item, checked) {
			Ybz.setTheme(item.value)
		}
	}]
});
Ybz.tabs = new Ext.TabPanel( {
	region : 'center',
	activeTab : 0,
	enableTabScroll : true,
	border : false,
	plugins : new Ext.ux.TabCloseMenu(),
	items : [{
		id : 'HomePage',
		title : '首页',
		iconCls : 'home',
		contentEl : 'hp',
		closable : false,
		layout : 'fit'
	}]
});
Ybz.AddTabs = function(id, title, method, islogin, url) {
	if (islogin != null && islogin == true && !Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var tab = Ybz.tabs.items.get(id)
	if (tab == undefined) {
		if (url != undefined) {
			var url = "<iframe src='"
					+ url
					+ "' frameborder=0 width=100% height=100%  scrolling=auto ></iframe>";
			tab = Ybz.tabs.add( {
				id : id,
				title : title,
				html : url,
				closable : true,
				layout : 'fit'
			});
		} else {
			var div = Ext.DomHelper.append('content', {
				tag : 'div',
				style : "margin:0px;height:100%;"
			});
			div.id = "div" + id;
			switch (method) {
				case 'add' :
					tab = Ybz.tabs.add( {
						id : id,
						title : title,
						items : [Ybz.Accountbook.Add(div.id)],
						closable : true,
						layout : 'fit'
					});
					break;
				case 'listedit' :
					tab = Ybz.tabs.add( {
						id : id,
						title : title,
						iconCls : 'edit',
						items : [Ybz.Accountbook.ListEdit(div.id)],
						closable : true,
						layout : 'fit'
					});
					break;
				case 'listall' :
					tab = Ybz.tabs.add( {
						id : id,
						title : title,
						iconCls : 'sun',
						items : [Ybz.Accountbook.ListAll(div.id)],
						closable : false,
						layout : 'fit'
					});
					break;
				case 'analyseaccount' :
					tab = Ybz.tabs.add( {
						id : id,
						title : title,
						iconCls : 'chart',
						items : [Ybz.Accountbook.Analyse(div.id)],
						closable : true,
						layout : 'fit'
					});
					break;
				case 'exportdata' :
					tab = Ybz.tabs.add( {
						id : id,
						title : title,
						iconCls : 'excel',
						items : [Ybz.Accountbook.Export(div.id)],
						closable : true,
						layout : 'fit'
					});
					break;
				case 'addresslist-listedit' :
					tab = Ybz.tabs.add( {
						id : id,
						title : title,
						iconCls : 'edit',
						items : [Ybz.Addresslist.ListEdit(div.id)],
						closable : true,
						layout : 'fit'
					});
					break;
				case 'notepad-listedit' :
					tab = Ybz.tabs.add( {
						id : id,
						title : title,
						iconCls : 'edit',
						items : [Ybz.Notepad.ListEdit(div.id)],
						closable : true,
						layout : 'fit'
					});
					break;
				case 'favorite-listedit' :
					tab = Ybz.tabs.add( {
						id : id,
						title : title,
						iconCls : 'edit',
						items : [Ybz.Favorite.ListEdit(div.id)],
						closable : true,
						layout : 'fit'
					});
					break;
			}
		}
	}
	if (Ybz.tabs != undefined || Ybz.tabs != null)
		Ybz.tabs.activate(tab);
}
Ybz.Cookies = {};
Ybz.Cookies.set = function(name, value) {
	var argv = arguments;
	var argc = arguments.length;
	var expires = (argc > 2) ? argv[2] : null;
	var path = (argc > 3) ? argv[3] : '/';
	var domain = (argc > 4) ? argv[4] : null;
	var secure = (argc > 5) ? argv[5] : false;
	document.cookie = name + "=" + encodeURIComponent(value)
			+ ((expires == null) ? "" : ("; expires=" + expires.toGMTString()))
			+ ((path == null) ? "" : ("; path=" + path))
			+ ((domain == null) ? "" : ("; domain=" + domain))
			+ ((secure == true) ? "; secure" : "");
};
Ybz.Cookies.get = function(name) {
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0, j = 0;
	while (i < clen) {
		j = i + alen;
		if (document.cookie.substring(i, j) == arg)
			return Ybz.Cookies.getCookieVal(j);
		i = document.cookie.indexOf(" ", i) + 1;
		if (i == 0)
			break;
	}
	return null;
};
Ybz.Cookies.clear = function(name) {
	if (Ybz.Cookies.get(name)) {
		document.cookie = name + "=; expires=Thu, 01-Jan-70 00:00:01 GMT";
	}
};
Ybz.Cookies.getCookieVal = function(offset) {
	var endstr = document.cookie.indexOf(";", offset);
	if (endstr == -1) {
		endstr = document.cookie.length;
	}
	return decodeURIComponent(document.cookie.substring(offset, endstr));
};
Ybz.User = {
	DataPage : "DataPage/User.aspx"
};
Ybz.User.Logout = function() {
	Ext.get(document.body).mask("正在退出......");
	Ybz.clearCookie();
	Ext.Ajax.request( {
		url : Ybz.User.DataPage + '?m=logout',
		success : function(response) {
			Ext.get(document.body).unmask();
			if (response.responseText == "1")
				Ext.Msg.alert('信息提示', '退出成功,欢迎下次使用！', function() {
					Ybz.User.setLogout();
				});
			else
				Ext.Msg.alert('退出失败', response.responseText);
		},
		failure : function(response) {
			Ext.get(document.body).unmask();
			Ext.Msg.alert('信息提示', '退出失败,系统错误');
		},
		params : {}
	});
}
Ybz.User.Reg = function() {
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = "reguser";
	var form = new Ext.form.FormPanel( {
		labelAlign : 'right',
		labelWidth : 100,
		frame : true,
		defaultType : 'textfield',
		width : 300,
		items : [ {
			fieldLabel : '用户名',
			name : 'UserCode',
			width : 150,
			allowBlank : false,
			vtype : 'alphanum',
			maxLength : 50,
			minLength : 2
		}, {
			fieldLabel : '昵  称',
			name : 'Petname',
			width : 150,
			allowBlank : false,
			maxLength : 50,
			minLength : 2
		}, {
			fieldLabel : '密  码',
			name : 'Password',
			inputType : 'password',
			width : 150,
			allowBlank : false,
			maxLength : 50
		}, {
			fieldLabel : '重复密码',
			name : 'Password2',
			inputType : 'password',
			width : 150,
			allowBlank : false,
			maxLength : 50
		}, {
			fieldLabel : 'Email',
			name : 'Email',
			width : 150,
			allowBlank : false,
			vtype : 'email',
			maxLength : 100
		}],
		buttons : [
				{
					text : '注册',
					handler : function() {
						if (form.getForm().isValid()) {
							if (form.getForm().findField('Password').getValue() != form
									.getForm().findField('Password2')
									.getValue())
								Ext.Msg.alert('信息提示', '两次密码不一致！');
							else {
								form.getForm().submit( {
									url : Ybz.User.DataPage + '?m=reg',
									waitMsg : '注册中...',
									success : function(form, action) {
										Ext.Msg.alert('信息', action.result.msg,
												function() {
													win.close();
													Ybz.User.setUserState();
												});
									},
									failure : function(form, action) {
										if (!action.result.msg)
											Ext.Msg
													.alert('信息提示',
															'系统错误，请再试一次！');
										else
											Ext.Msg.alert('信息提示',
													action.result.msg);
									}
								});
							}
						} else {
							Ext.Msg.alert('信息提示', '请查看输入！')
						}
					}
				}, {
					text : '登陆',
					handler : function() {
						win.close();
						Ybz.User.Login();
					}
				}]
	});
	var win = new Ext.Window( {
		title : '用户注册',
		el : 'reguser',
		layout : 'fit',
		iconCls : 'reg',
		modal : true,
		width : 300,
		height : 220,
		minWidth : 300,
		minHeight : 220,
		items : [form]
	});
	win.show();
}
Ybz.User.Profiles = function() {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = "Profiles";
	var form = new Ext.form.FormPanel( {
		labelAlign : 'right',
		labelWidth : 100,
		frame : true,
		defaultType : 'textfield',
		items : [ {
			fieldLabel : '用户名',
			name : 'UserCode',
			width : 150,
			allowBlank : false,
			vtype : 'alphanum',
			maxLength : 50,
			minLength : 2
		}, {
			fieldLabel : '昵  称',
			name : 'Petname',
			width : 150,
			allowBlank : false,
			maxLength : 50,
			minLength : 2
		}, {
			fieldLabel : 'Email',
			name : 'Email',
			width : 150,
			allowBlank : false,
			vtype : 'email',
			maxLength : 100
		}, {
			xtype : 'textarea',
			fieldLabel : '备注',
			name : 'Note',
			width : 200,
			hight : 150,
			maxLength : 250
		}, {
			xtype : 'hidden',
			name : 'UserId'
		}],
		buttons : [{
			text : '修改',
			handler : function() {
				if (form.getForm().isValid()) {
					form.getForm().submit( {
						url : Ybz.User.DataPage + '?m=profiles',
						waitMsg : '保存中...',
						success : function(form, action) {
							Ext.Msg.alert('信息提示', action.result.msg,
									function() {
										Ybz.User.setUserState();
									});
						},
						failure : function(form, action) {
							Ext.Msg.alert('信息提示', '系统错误，请再试一次！');
						}
					});
				} else {
					Ext.Msg.alert('信息提示', '请查看输入！')
				}
			}
		}]
	});
	var win = new Ext.Window( {
		title : '个人设置',
		el : 'Profiles',
		layout : 'fit',
		iconCls : 'member',
		modal : true,
		width : 400,
		height : 240,
		minWidth : 400,
		minHeight : 240,
		items : [form]
	});
	win.show();
	Ext.Ajax.request( {
		url : Ybz.User.DataPage + '?m=usermodel&UserId='
				+ Ybz.getCookie().UserId,
		success : function(response) {
			var p = Ext.decode(response.responseText);
			if (p != null && p.success == undefined) {
				form.getForm().findField('UserCode').setValue(p.UserCode);
				form.getForm().findField('Petname').setValue(p.Petname);
				form.getForm().findField('Email').setValue(p.Email);
				form.getForm().findField('Note').setValue(p.Note);
				form.getForm().findField('UserId').setValue(p.UserId);
			}
		},
		failure : function(response) {
			Ext.Msg.alert('失败', '系统错误');
		},
		params : {}
	});
}
Ybz.User.PasswprdUpdate = function() {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = "PasswprdUpdate";
	var cookie = Ybz.getCookie();
	var form = new Ext.form.FormPanel( {
		labelAlign : 'right',
		labelWidth : 100,
		frame : true,
		defaultType : 'textfield',
		items : [ {
			fieldLabel : '用户名',
			name : 'UserCode',
			width : 150,
			allowBlank : false,
			vtype : 'alphanum',
			readOnly : true,
			maxLength : 50,
			minLength : 2,
			value : cookie.UserCode
		}, {
			fieldLabel : '原密码',
			name : 'Password',
			inputType : 'password',
			width : 150,
			allowBlank : false,
			maxLength : 50
		}, {
			fieldLabel : '新密码',
			name : 'NewPassword',
			inputType : 'password',
			width : 150,
			allowBlank : false,
			maxLength : 50
		}, {
			fieldLabel : '重复密码',
			name : 'NewPassword2',
			inputType : 'password',
			width : 150,
			allowBlank : false,
			maxLength : 50
		}, {
			xtype : 'hidden',
			name : 'UserId',
			value : cookie.UserId
		}],
		buttons : [{
			text : '修改',
			handler : function() {
				if (form.getForm().isValid()) {
					if (form.getForm().findField('NewPassword').getValue() != form
							.getForm().findField('NewPassword2').getValue())
						Ext.Msg.alert('信息提示', '两次新密码不一致！');
					else {
						form.getForm().submit( {
							url : Ybz.User.DataPage + '?m=passwprdupdate',
							waitMsg : '修改中...',
							success : function(form, action) {
								Ext.Msg.alert('信息提示', action.result.msg,
										function() {
											Ybz.User.setUserState();
										});
							},
							failure : function(form, action) {
								Ext.Msg.alert('信息提示', '系统错误，请再试一次！');
							}
						});
					}
				} else {
					Ext.Msg.alert('信息提示', '请查看输入！')
				}
			}
		}]
	});
	var win = new Ext.Window( {
		title : '修改密码',
		el : 'PasswprdUpdate',
		layout : 'fit',
		iconCls : 'user_edit',
		modal : true,
		width : 300,
		height : 200,
		minWidth : 300,
		minHeight : 200,
		items : [form]
	});
	win.show();
}
Ybz.User.Login = function(divid) {
	Ybz.User.setLogout();
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = "loginuser";
	var form = new Ext.form.FormPanel( {
		labelAlign : 'right',
		labelWidth : 100,
		frame : true,
		defaultType : 'textfield',
		items : [ {
			fieldLabel : '用户名',
			name : 'UserCode',
			width : 120,
			allowBlank : false,
			vtype : 'alphanum',
			maxLength : 50
		}, {
			fieldLabel : '密&nbsp;&nbsp;&nbsp;码',
			name : 'Password',
			inputType : 'password',
			width : 120,
			allowBlank : false,
			maxLength : 50
		}],
		buttons : [ {
			text : '登陆',
			handler : function() {
				if (form.getForm().isValid()) {
					form.getForm().submit( {
						url : Ybz.User.DataPage + '?m=login',
						waitMsg : '登陆中......',
						success : function(form, action) {
							Ext.Msg.alert('信息', action.result.msg, function() {
								win.close();
								Ybz.User.setUserState();
								Ybz.setTheme(Ybz.getCookie().Theme)
							});
						},
						failure : function(form, action) {
							Ext.Msg.alert('信息提示', action.result.msg);
						}
					});
				} else {
					Ext.Msg.alert('信息提示', '请查看输入！')
				}
			}
		}, {
			text : '注册',
			handler : function() {
				win.close();
				Ybz.User.Reg();
			}
		}]
	});
	var win = new Ext.Window( {
		title : '用户登陆',
		el : 'loginuser',
		layout : 'fit',
		iconCls : 'login',
		modal : true,
		width : 300,
		height : 150,
		minWidth : 250,
		minHeight : 150,
		items : [form]
	});
	win.show();
}
Ybz.User.isLogin = function() {
	if (!Ybz.getCookie()) {
		Ybz.User.setLogout();
		return false;
	}
	return true;
}
Ybz.User.setLogin = function() {
	var cookie = Ybz.getCookie();
	Ext.getCmp('Header-logout').show();
	Ext.getCmp('Header-user').show();
	Ext.getCmp('Header-user').setText(cookie.Petname + "(" + cookie.UserCode
			+ ")");
	Ext.getCmp('Header-login').hide();
	Ext.getCmp('Header-reg').hide();
}
Ybz.User.setLogout = function() {
	Ybz.clearCookie();
	Ext.getCmp('Header-logout').hide();
	Ext.getCmp('Header-user').hide();
	Ext.getCmp('Header-user').setText("");
	Ext.getCmp('Header-login').show();
	Ext.getCmp('Header-reg').show();
	var tabs = Ybz.tabs;
	while (tabs.items.length > 1)
		tabs.remove(1);
}
Ybz.User.setUserState = function(b) {
	var c = Ybz.getCookie();
	if (c) {
		var cookie = c;
		Ybz.User.setLogin();
		Ybz.Accountbook.labelStore.load();
	} else
		Ybz.User.setLogout();
}
Ybz.Accountbook = {
	DataPage : "DataPage/Accountbook.aspx"
};
Ybz.Accountbook.TypeStore = new Ext.data.SimpleStore( {
	fields : ['value', 'text'],
	data : [['0', '支出'], ['1', '收入']]
});
Ybz.Accountbook.TypeStore2 = new Ext.data.SimpleStore( {
	fields : ['value', 'text'],
	data : [['01', '全部'], ['0', '支出'], ['1', '收入']]
});
Ybz.Accountbook.TypeComboBox = new Ext.form.ComboBox( {
	store : Ybz.Accountbook.TypeStore,
	displayField : 'text',
	valueField : 'value',
	mode : 'local',
	emptyText : '选择类型',
	readOnly : true,
	triggerAction : 'all'
});
Ybz.Accountbook.Type = new Ext.grid.GridEditor(Ybz.Accountbook.TypeComboBox);
Ybz.Accountbook.labelStore = new Ext.data.Store( {
	proxy : new Ext.data.HttpProxy( {
		url : Ybz.Accountbook.DataPage + '?m=label'
	}),
	reader : new Ext.data.JsonReader( {}, [ {
		name : 'LabelId'
	}, {
		name : 'UserId'
	}, {
		name : 'Name'
	}, {
		name : 'Type'
	}, {
		name : 'Showorder'
	}])
});
Ybz.Accountbook.renderType = function(value) {
	if (value == '0')
		return "<span style='color:red;font-weight:bold;'>支出</span>";
	else
		return "<span style='color:green;font-weight:bold;'>收入</span>";
}
Ybz.Accountbook.renderLabel = function(value) {
	for (var j = 0;j <= Ybz.Accountbook.labelStore.data.items.length; j++) {
		if (Ybz.Accountbook.labelStore.data.item(j) != undefined
				&& Ybz.Accountbook.labelStore.data.item(j).data.LabelId.trim() == value
						.trim()) {
			return Ybz.Accountbook.labelStore.data.item(j).data.Name;
		}
	}
}
Ybz.Accountbook.Add = function() {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = Ext.id();
	var form = new Ext.form.FormPanel( {
		labelAlign : 'right',
		labelWidth : 100,
		frame : true,
		defaultType : 'textfield',
		loadMask : true,
		items : [
				{
					xtype : 'datefield',
					fieldLabel : '日期',
					name : 'usedatetime',
					format : 'Y-m-d',
					allowBlank : false,
					value : (new Date()).format('Y-m-d')
				},
				{
					xtype : "combo",
					fieldLabel : '支出类型',
					name : 'type',
					readOnly : true,
					triggerAction : 'all',
					allowBlank : false,
					store : Ybz.Accountbook.TypeStore,
					displayField : 'text',
					valueField : 'value',
					mode : 'local',
					emptyText : '选择类型'
				},
				{
					fieldLabel : '标题',
					name : 'title',
					width : 250,
					qtip : '输入收支名称啦~',
					allowBlank : false,
					maxLength : 50
				},
				{
					xtype : 'numberfield',
					fieldLabel : '金额',
					name : 'money',
					allowBlank : false
				},
				{
					fieldLabel : '地点',
					name : 'place',
					width : 250,
					maxLength : 50
				},
				{
					xtype : "combo",
					fieldLabel : '标签分类',
					name : 'label',
					triggerAction : 'all',
					allowBlank : false,
					maxLength : 25,
					store : Ybz.Accountbook.labelStore,
					pageSize : 10,
					resizable : true,
					displayField : 'Name',
					valueField : 'LabelId',
					emptyText : '输入或者选择标签分类'
				},
				{
					layout : 'form',
					xtype : 'fieldset',
					title : '心情',
					autoHeight : true,
					defaultType : 'radio',
					hideLabels : true,
					style : 'margin-left:50px;margin-right:20px',
					items : [
							{
								xtype : 'panel',
								html : "当前心情&nbsp;&nbsp;<img id='cheart' border=1  src='images/heart/wx.gif' alt='微笑'>"
							}, {
								xtype : 'textfield',
								name : 'heart',
								value : 'wx.gif',
								hidden : true
							}, {
								xtype : 'panel',
								html : Ybz.heartimg
							}]
				}, {
					layout : 'form',
					xtype : 'textarea',
					fieldLabel : '备注',
					name : 'description',
					width : 400,
					maxLength : 250
				}, {
					fieldLabel : '是否隐藏',
					boxLabel : '选择不公开，只有你登陆后可以看见~',
					xtype : 'checkbox',
					name : 'sishide',
					inputValue : '1',
					value : '0',
					checked : false,
					width : 'auto',
					style : 'margin-left:10px;'
				}],
		buttons : [{
			text : '保存',
			handler : function() {
				if (form.getForm().isValid()) {
					Ext.MessageBox
							.confirm(
									'确认框',
									'确认提交?',
									function(s) {
										if (s == 'yes') {
											var ishide = "0";
											if (form.getForm()
													.findField('sishide').checked)
												ishide = "1";
											var LabelId = form.getForm()
													.findField('label').value;
											form
													.getForm()
													.submit( {
														url : Ybz.Accountbook.DataPage
																+ '?m=add&ishide='
																+ ishide
																+ '&LabelId='
																+ LabelId,
														waitMsg : '正在保存数据...',
														success : function(
																form, action) {
															Ext.Msg
																	.alert(
																			'信息',
																			action.result.msg);
															form
																	.findField('title')
																	.setValue("");
															form
																	.findField('money')
																	.setValue("");
															form
																	.findField('place')
																	.setValue("");
															form
																	.findField('description')
																	.setValue("");
															Ybz.Accountbook.labelStore
																	.load();
														},
														failure : function(
																form, action) {
															Ext.Msg.alert('错误',
																	'保存失败');
														}
													});
										}
									});
				} else {
					Ext.Msg.alert('错误', '请查看输入！')
				}
			}
		}]
	});
	var win = new Ext.Window( {
		title : '账本记录收支',
		el : div.id,
		layout : 'fit',
		iconCls : 'add',
		modal : true,
		width : 550,
		height : 440,
		minWidth : 550,
		minHeight : 440,
		items : [form]
	});
	win.show();
}
Ybz.Accountbook.Analyse = function(divid) {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var tbs = new Ext.TabPanel();
	var d = new Date();
	var dn = d.getFullYear();
	var dy = d.getMonth() + 1;
	var yy = new Ext.form.ComboBox( {
		store : Ybz.Year,
		typeAhead : true,
		emptyText : '年',
		mode : 'local',
		value : dn,
		readOnly : true,
		triggerAction : 'all',
		allowBlank : false,
		width : 60,
		valueField : 'value',
		displayField : 'text'
	});
	var my = new Ext.form.ComboBox( {
		store : Ybz.Year,
		typeAhead : true,
		emptyText : '年',
		value : dn,
		mode : 'local',
		readOnly : true,
		triggerAction : 'all',
		allowBlank : false,
		width : 60,
		valueField : 'value',
		displayField : 'text'
	});
	var mm = new Ext.form.ComboBox( {
		store : Ybz.Month,
		typeAhead : true,
		emptyText : "月",
		value : dy,
		mode : 'local',
		readOnly : true,
		triggerAction : 'all',
		allowBlank : false,
		width : 60,
		valueField : 'value',
		displayField : 'text'
	});
	var tbYear = new Ext.Toolbar([
			'年份',
			yy,
			{
				text : '查询',
				iconCls : 'search',
				handler : function() {
					if (yy.isValid()) {
						var um = tbs.getActiveTab().getUpdater();
						um.update( {
							url : Ybz.Accountbook.DataPage
									+ '?m=ReportUserYear&UserId='
									+ Ybz.getCookie().UserId + '&year='
									+ yy.value + '&' + new Date(),
							scripts : true
						});
					} else {
						Ext.Msg.alert('错误', '请查看日期选择！')
					}
				}
			}]);
	var tbMonth = new Ext.Toolbar([
			'选择',
			my,
			'年',
			mm,
			'月',
			{
				text : '查询',
				iconCls : 'search',
				handler : function() {
					if (my.isValid() && mm.isValid()) {
						var um = tbs.getActiveTab().getUpdater();
						um.update( {
							url : Ybz.Accountbook.DataPage
									+ '?m=reportusermonth&UserId='
									+ Ybz.getCookie().UserId + '&year='
									+ my.value + '&month=' + mm.value + '&'
									+ new Date(),
							scripts : true
						});
					} else {
						Ext.Msg.alert('错误', '请查看日期选择！')
					}
				}
			}]);
	var tbType = new Ext.Toolbar([
			'-',
			'开始日期',
			{
				xtype : 'datefield',
				id : 'startDate-type',
				name : 'startDate-type',
				format : 'Y-m-d',
				value : (new Date).format('Y-m-d').substring(0, 8) + '01'
			},
			'-',
			'结束日期',
			{
				xtype : 'datefield',
				id : 'endDate-type',
				name : 'endDate-type',
				format : 'Y-m-d',
				value : (new Date).format('Y-m-d')
			},
			'-',
			{
				text : '查询',
				iconCls : 'search',
				handler : function() {
					if (Ext.getCmp('startDate-type').isValid()
							&& Ext.getCmp('endDate-type').isValid()) {
						var startDate = Ext.get('startDate-type').dom.value;
						var endDate = Ext.get('endDate-type').dom.value;
						var um = tbs.getActiveTab().getUpdater();
						um.update( {
							url : Ybz.Accountbook.DataPage
									+ '?m=ReportUserType&UserId='
									+ Ybz.getCookie().UserId + '&startDate='
									+ startDate + '&endDate=' + endDate,
							scripts : true
						});
					} else {
						Ext.Msg.alert('错误', '请查看日期输入！');
					}
				}
			}]);
	tbs = new Ext.TabPanel( {
		renderTo : divid,
		activeTab : 0,
		enableTabScroll : true,
		border : false,
		items : [
				{
					title : '总概述',
					closable : false,
					layout : 'fit',
					autoScroll : true,
					autoLoad : {
						url : Ybz.Accountbook.DataPage
								+ '?m=ReportUserOverview&UserId='
								+ Ybz.getCookie().UserId,
						scripts : true
					}
				},
				{
					title : '分类统计',
					closable : false,
					layout : 'fit',
					autoScroll : true,
					tbar : tbType,
					autoLoad : {
						url : Ybz.Accountbook.DataPage
								+ '?m=ReportUserType&UserId='
								+ Ybz.getCookie().UserId + '&startDate='
								+ (new Date).format('Y-m-d').substring(0, 8)
								+ '01&endDate=' + (new Date).format('Y-m-d'),
						scripts : true
					}
				},
				{
					title : '月分析',
					id : 'reportusermonth',
					closable : false,
					layout : 'fit',
					tbar : tbMonth,
					autoScroll : true,
					autoLoad : {
						url : Ybz.Accountbook.DataPage
								+ '?m=reportusermonth&UserId='
								+ Ybz.getCookie().UserId + '&year=' + dn
								+ '&month=' + dy,
						scripts : true
					}
				},
				{
					title : '年分析',
					closable : false,
					tbar : tbYear,
					autoScroll : true,
					autoLoad : {
						url : Ybz.Accountbook.DataPage
								+ '?m=ReportUserYear&UserId='
								+ Ybz.getCookie().UserId + '&year=' + dn,
						scripts : true
					}
				}]
	});
	return tbs;
}
Ybz.Accountbook.Export = function(divid) {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var cm = new Ext.grid.ColumnModel([ {
		header : 'NO.',
		width : 15,
		renderer : function(value, cellmeta, record, rowIndex) {
			return rowIndex + 1;
		}
	}, {
		header : '编号',
		dataIndex : 'AccountbookId',
		hidden : true,
		width : 15
	}, {
		header : '日期',
		dataIndex : 'UseDatetime',
		width : 50,
		sortable : true,
		renderer : Ybz.renderDate
	}, {
		header : '类别',
		dataIndex : 'Type',
		width : 20,
		sortable : true,
		renderer : Ybz.Accountbook.renderType
	}, {
		header : '标题',
		dataIndex : 'Title',
		sortable : true
	}, {
		header : '金额',
		dataIndex : 'Money',
		sortable : true,
		width : 40
	}, {
		header : '地点',
		dataIndex : 'Place',
		sortable : true,
		width : 50
	}, {
		header : '标签',
		dataIndex : 'LabelId',
		sortable : true,
		width : 30,
		renderer : Ybz.Accountbook.renderLabel
	}, {
		header : '心情',
		dataIndex : 'Heart',
		sortable : true,
		width : 20,
		renderer : Ybz.renderHeart
	}, {
		id : 'Description',
		header : '备注',
		sortable : true,
		dataIndex : 'Description'
	}, {
		header : '隐藏',
		dataIndex : 'IsHide',
		sortable : true,
		width : 20,
		renderer : Ybz.renderIsHide,
		hidden : true
	}, {
		id : 'RegDatetime',
		header : '编辑时间',
		sortable : true,
		dataIndex : 'RegDatetime',
		hidden : true
	}]);
	var ds = new Ext.data.Store( {
		proxy : new Ext.data.HttpProxy( {
			url : Ybz.Accountbook.DataPage + '?m=list'
		}),
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, [ {
			name : 'AccountbookId'
		}, {
			name : 'UserId'
		}, {
			name : 'Title'
		}, {
			name : 'Type'
		}, {
			name : 'Money'
		}, {
			name : 'LabelId'
		}, {
			name : 'Heart'
		}, {
			name : 'Place'
		}, {
			name : 'Description'
		}, {
			name : 'UseDatetime',
			renderer : Ybz.renderDate
		}, {
			name : 'RegDatetime'
		}, {
			name : 'IsHide'
		}]),
		pruneModifiedRecords : true
	});
	var tb = new Ext.Toolbar([
			'-',
			'支出类型',
			{
				xtype : "combo",
				name : 'type-export-name',
				readOnly : true,
				triggerAction : 'all',
				allowBlank : false,
				width : 60,
				store : Ybz.Accountbook.TypeStore2,
				value : '01',
				hiddenName : 'type-export',
				displayField : 'text',
				valueField : 'value',
				mode : 'local',
				emptyText : '选择类型'
			},
			'-',
			'开始日期',
			{
				xtype : 'datefield',
				id : 'startDate-export',
				name : 'startDate-export',
				format : 'Y-m-d',
				value : (new Date).format('Y-m-d').substring(0, 8) + '01'
			},
			'-',
			'结束日期',
			{
				xtype : 'datefield',
				id : 'endDate-export',
				name : 'endDate-export',
				format : 'Y-m-d',
				value : (new Date).format('Y-m-d')
			},
			'-',
			{
				text : '查询',
				iconCls : 'search',
				handler : function() {
					if (Ext.getCmp('startDate-export').isValid()
							&& Ext.getCmp('endDate-export').isValid()) {
						var sWhere = "";
						var type = Ext.get('type-export').dom.value;
						var startDate = Ext.get('startDate-export').dom.value;
						var endDate = Ext.get('endDate-export').dom.value;
						if (startDate != "" && endDate != "") {
							if (type != "01")
								sWhere += " type='"
										+ type
										+ "' AND dbo.ydm(UseDatetime) between '"
										+ startDate + "' and '" + endDate
										+ "' ";
							else
								sWhere += "  dbo.ydm(UseDatetime) between '"
										+ startDate + "' and '" + endDate
										+ "' ";
						} else if (type != "01")
							sWhere += " type='" + type + "'";
						ds.load( {
							params : {
								start : 0,
								limit : 20,
								sWhere : sWhere
							}
						});
					} else {
						Ext.Msg.alert('错误', '请查看日期输入！')
					}
				}
			},
			'-',
			{
				text : '导出',
				iconCls : 'excel',
				handler : function() {
					if (Ext.getCmp('startDate-export').isValid()
							&& Ext.getCmp('endDate-export').isValid()) {
						var sWhere = "";
						var type = Ext.get('type-export').dom.value;
						var startDate = Ext.get('startDate-export').dom.value;
						var endDate = Ext.get('endDate-export').dom.value;
						if (startDate != "" && endDate != "") {
							if (type != "01")
								sWhere += " a.type='"
										+ type
										+ "' AND dbo.ydm(a.UseDatetime) between '"
										+ startDate + "' and '" + endDate
										+ "' ";
							else
								sWhere += "  dbo.ydm(a.UseDatetime) between '"
										+ startDate + "' and '" + endDate
										+ "' ";
						} else if (type != "01")
							sWhere += " a.type='" + type + "'";
						Ext.get("ifrm").dom.src = Ybz.Accountbook.DataPage
								+ "?m=export&sWhere=" + sWhere + "&sdssds="
								+ new Date();
					} else {
						Ext.Msg.alert('错误', '请查看日期输入！')
					}
				}
			}, '-']);
	var grid = new Ext.grid.GridPanel( {
		el : divid,
		ds : ds,
		cm : cm,
		layout : 'fit',
		loadMask : true,
		autoExpandColumn : 'Description',
		viewConfig : {
			forceFit : true
		},
		tbar : tb,
		bbar : new Ext.PagingToolbar( {
			pageSize : 20,
			store : ds,
			displayInfo : true,
			displayMsg : '显示第 {0} 条到 {1} 条记录，一共 {2} 条',
			emptyMsg : "没有记录"
		})
	});
	grid.render();
	ds.load( {
		params : {
			start : 0,
			limit : 20
		}
	});
	return grid;
}
Ybz.Accountbook.ListEdit = function(divid) {
	var cm = new Ext.grid.ColumnModel([ {
		header : 'NO.',
		width : 15,
		renderer : function(value, cellmeta, record, rowIndex) {
			return rowIndex + 1;
		}
	}, {
		header : '编号',
		dataIndex : 'AccountbookId',
		hidden : true,
		width : 50
	}, {
		header : '日期',
		dataIndex : 'UseDatetime',
		width : 40,
		sortable : true,
		editor : new Ext.grid.GridEditor(new Ext.form.DateField( {
			format : 'Y-m-d'
		})),
		renderer : Ybz.renderDate
	}, {
		header : '类别',
		dataIndex : 'Type',
		width : 20,
		sortable : true,
		renderer : Ybz.Accountbook.renderType,
		editor : Ybz.Accountbook.Type
	}, {
		header : '标题',
		dataIndex : 'Title',
		sortable : true,
		width : 100,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : false
		}))
	}, {
		header : '金额',
		dataIndex : 'Money',
		sortable : true,
		width : 30,
		editor : new Ext.grid.GridEditor(new Ext.form.NumberField( {
			allowBlank : false,
			allowNegative : false
		}))
	}, {
		header : '地点',
		dataIndex : 'Place',
		sortable : true,
		width : 50,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50
		}))
	}, {
		header : '标签',
		dataIndex : 'LabelId',
		sortable : true,
		width : 30,
		allowBlank : false,
		renderer : Ybz.Accountbook.renderLabel,
		editor : new Ext.grid.GridEditor(new Ext.form.ComboBox( {
			store : Ybz.Accountbook.labelStore,
			pageSize : 10,
			resizable : true,
			displayField : 'Name',
			valueField : 'LabelId',
			mode : 'remote',
			emptyText : '选择类型',
			readOnly : false,
			triggerAction : 'all'
		}))
	}, {
		header : '心情',
		dataIndex : 'Heart',
		sortable : true,
		width : 20,
		renderer : Ybz.renderHeart,
		editor : new Ext.grid.GridEditor(new Ext.form.ComboBox( {
			store : new Ext.data.SimpleStore( {
				fields : ['value', 'text'],
				data : Ybz.heart
			}),
			emptyText : '请选择',
			mode : 'local',
			triggerAction : 'all',
			valueField : 'value',
			displayField : 'text',
			readOnly : true
		}))
	}, {
		id : 'Description',
		header : '备注',
		sortable : true,
		dataIndex : 'Description',
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 250
		}))
	}, {
		header : '隐藏',
		dataIndex : 'IsHide',
		sortable : true,
		width : 20,
		renderer : Ybz.renderIsHide,
		editor : new Ext.grid.GridEditor(new Ext.form.Checkbox( {
			allowBlank : false
		}))
	}, {
		id : 'RegDatetime',
		header : '编辑时间',
		sortable : true,
		dataIndex : 'RegDatetime',
		hidden : true
	}]);
	var ds = new Ext.data.Store( {
		proxy : new Ext.data.HttpProxy( {
			url : Ybz.Accountbook.DataPage + '?m=list'
		}),
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, [ {
			name : 'AccountbookId'
		}, {
			name : 'UserId'
		}, {
			name : 'Title'
		}, {
			name : 'Type'
		}, {
			name : 'Money'
		}, {
			name : 'LabelId'
		}, {
			name : 'Heart'
		}, {
			name : 'Place'
		}, {
			name : 'Description'
		}, {
			name : 'UseDatetime'
		}, {
			name : 'RegDatetime'
		}, {
			name : 'IsHide'
		}]),
		pruneModifiedRecords : true
	});
	var Record = Ext.data.Record.create([ {
		name : 'AccountbookId',
		type : 'string'
	}, {
		name : 'UserId',
		type : 'string'
	}, {
		name : 'Title',
		type : 'string'
	}, {
		name : 'Type',
		type : 'string'
	}, {
		name : 'Money',
		type : 'string'
	}, {
		name : 'LabelId',
		type : 'string'
	}, {
		name : 'Heart',
		type : 'string'
	}, {
		name : 'Place',
		type : 'string'
	}, {
		name : 'Description',
		type : 'string'
	}, {
		name : 'UseDatetime',
		type : 'string'
	}, {
		name : 'RegDatetime',
		type : 'string'
	}, {
		name : 'IsHide',
		type : 'Boolean'
	}]);
	var menuSelect = new Ext.menu.Menu( {
		items : [
				{
					text : '全部',
					group : 'Select',
					checked : true,
					handler : function() {
						ds.load( {
							params : {
								start : 0,
								limit : 20
							}
						});
					}
				},
				{
					text : '支出',
					group : 'Select',
					checked : false,
					handler : function() {
						ds.load( {
							params : {
								start : 0,
								limit : 20,
								sWhere : "type='0'"
							}
						});
					}
				},
				{
					text : '收入',
					group : 'Select',
					checked : false,
					handler : function() {
						ds.load( {
							params : {
								start : 0,
								limit : 20,
								sWhere : "type='1'"
							}
						});
					}
				},
				{
					text : '根据日期',
					iconCls : 'calendar',
					menu : new Ext.menu.DateMenu( {
						handler : function(dp, date) {
							ds.load( {
								params : {
									start : 0,
									limit : 20,
									sWhere : "dbo.Ydm(UseDatetime)='"
											+ date.format('Y-m-d') + "'"
								}
							});
						}
					})
				}]
	});
	var tb = new Ext.Toolbar([
			'-',
			{
				text : '查询',
				iconCls : 'search',
				menu : menuSelect
			},
			'-',
			{
				text : '刷新',
				iconCls : 'refresh',
				handler : function() {
					ds.reload();
					Ybz.Accountbook.labelStore.load();
				}
			},
			'-',
			{
				text : '添加',
				iconCls : 'add',
				handler : function() {
					var dt = new Date().format("Y-m-d");
					var initValue = {
						AccountbookId : "00000000-0000-0000-0000-000000000000",
						UserId : "00000000-0000-0000-0000-000000000000",
						Title : "",
						Type : "0",
						Money : 0,
						LabelId : "00000000-0000-0000-0000-000000000000",
						Heart : "wx.gif",
						Place : "",
						Description : "",
						UseDatetime : new Date(),
						RegDatetime : new Date(),
						IsHide : false
					};
					var p = new Record(initValue);
					grid.stopEditing();
					ds.insert(0, p);
					grid.startEditing(0, 4);
					p.dirty = true;
					p.modified = initValue;
					if (ds.modified.indexOf(p) == -1) {
						ds.modified.push(p);
					}
				}
			},
			'-',
			{
				text : '删除',
				iconCls : 'delete',
				id : 'acc-del-btn',
				disabled : true,
				handler : function() {
					var accountbookid = "";
					var row = grid.getSelections();
					if (row.length > 0) {
						accountbookid = row[0].get("AccountbookId");
						if (accountbookid == "00000000-0000-0000-0000-000000000000") {
							ds.remove(grid.getSelectionModel().getSelected());
							return;
						}
						Ext.Msg
								.confirm(
										'信息',
										'确定要删除？',
										function(btn) {
											if (btn == 'yes') {
												Ext.lib.Ajax
														.request(
																'POST',
																Ybz.Accountbook.DataPage
																		+ '?m=del',
																{
																	success : function(
																			response) {
																		if (response.responseText == "1") {
																			ds
																					.remove(grid
																							.getSelectionModel()
																							.getSelected());
																		} else
																			Ext.Msg
																					.alert(
																							'信息',
																							"删除失败！");
																	},
																	failure : function() {
																		Ext.Msg
																				.alert(
																						"错误",
																						"系统出现问题！");
																	}
																},
																'AccountbookId='
																		+ accountbookid);
											}
										});
					} else
						Ext.Msg.alert('信息', "没有选择一行！");
				}
			},
			'-',
			{
				text : '保存',
				iconCls : 'save',
				handler : function() {
					var m = ds.modified.slice(0);
					if (m.length == 0) {
						Ext.Msg.alert('提示', '没有可保存的数据！');
						return;
					}
					for (var i = 0;i < m.length; i++) {
						var record = m[i];
						var fields = record.fields.keys;
						for (var j = 2;j < fields.length; j++) {
							var name = fields[j];
							var value = record.data[name];
							var colIndex = cm.findColumnIndex(name);
							var rowIndex = ds.indexOfId(record.id);
							if (cm.getCellEditor(colIndex) != undefined) {
								var editor = cm.getCellEditor(colIndex).field;
								if (!editor.validateValue(value)) {
									Ext.Msg.alert('提示', '请确保输入的数据正确。',
											function() {
												grid.startEditing(rowIndex,
														colIndex);
											});
									return;
								}
							}
						}
					}
					var jsonArray = [];
					Ext.each(m, function(item) {
						jsonArray.push(item.data);
					});
					Ext.lib.Ajax.request('POST', Ybz.Accountbook.DataPage
							+ '?m=save', {
						success : function(response) {
							Ext.Msg.alert('信息', response.responseText,
									function() {
										ds.reload();
									});
						},
						failure : function() {
							Ext.Msg.alert("错误", "系统出现问题！");
						}
					}, 'data=' + encodeURIComponent(Ext.encode(jsonArray)));
				}
			}]);
	var grid = new Ext.grid.EditorGridPanel( {
		el : divid,
		ds : ds,
		cm : cm,
		layout : 'fit',
		loadMask : true,
		sm : new Ext.grid.RowSelectionModel( {
			singleSelect : true
		}),
		autoExpandColumn : 'RegDatetime',
		clicksToEdit : 1,
		viewConfig : {
			forceFit : true
		},
		tbar : tb,
		bbar : new Ext.PagingToolbar( {
			pageSize : 20,
			store : ds,
			displayInfo : true,
			displayMsg : '显示第 {0} 条到 {1} 条记录，一共 {2} 条',
			emptyMsg : "没有记录"
		})
	});
	grid.render();
	ds.load( {
		params : {
			start : 0,
			limit : 20
		}
	});
	grid.getSelectionModel().on('selectionchange', function() {
		if (this.hasSelection()) {
			Ext.getCmp('acc-del-btn').setDisabled(false);
		} else {
			Ext.getCmp('acc-del-btn').setDisabled(true);
		}
	});
	return grid;
}
Ybz.Accountbook.Label = function() {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = "editlabeldiv";
	var cm = new Ext.grid.ColumnModel([ {
		header : 'NO.',
		width : 15,
		renderer : function(value, cellmeta, record, rowIndex) {
			return rowIndex + 1;
		}
	}, {
		header : '编号',
		dataIndex : 'LabelId',
		hidden : true,
		width : 50
	}, {
		header : '类别',
		dataIndex : 'Type',
		width : 20,
		sortable : true,
		renderer : Ybz.Accountbook.renderType,
		editor : Ybz.Accountbook.Type
	}, {
		header : '标题',
		dataIndex : 'Name',
		sortable : true,
		width : 100,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : false
		}))
	}, {
		id : 'Showorder',
		header : '顺序',
		dataIndex : 'Showorder',
		sortable : true,
		width : 30,
		editor : new Ext.grid.GridEditor(new Ext.form.NumberField( {
			allowBlank : false,
			Showorder : false
		}))
	}]);
	var ds = new Ext.data.Store( {
		proxy : new Ext.data.HttpProxy( {
			url : Ybz.Accountbook.DataPage + '?m=listlabel'
		}),
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, [ {
			name : 'LabelId'
		}, {
			name : 'UserId'
		}, {
			name : 'Name'
		}, {
			name : 'Type'
		}, {
			name : 'Showorder'
		}]),
		pruneModifiedRecords : true
	});
	var Record = Ext.data.Record.create([ {
		name : 'LabelId',
		type : 'string'
	}, {
		name : 'UserId',
		type : 'string'
	}, {
		name : 'Name',
		type : 'string'
	}, {
		name : 'Type',
		type : 'string'
	}, {
		name : 'Showorder',
		type : 'string'
	}]);
	var tb = new Ext.Toolbar([
			'-',
			{
				text : '刷新',
				iconCls : 'refresh',
				handler : function() {
					ds.reload();
				}
			},
			'-',
			{
				text : '添加',
				iconCls : 'add',
				handler : function() {
					var dt = new Date().format("Y-m-d");
					var initValue = {
						LabelId : "00000000-0000-0000-0000-000000000000",
						UserId : "00000000-0000-0000-0000-000000000000",
						Type : "0",
						Name : "",
						Showorder : 0
					};
					var p = new Record(initValue);
					grid.stopEditing();
					ds.insert(0, p);
					grid.startEditing(0, 4);
					p.dirty = true;
					p.modified = initValue;
					if (ds.modified.indexOf(p) == -1) {
						ds.modified.push(p);
					}
				}
			},
			'-',
			{
				text : '删除',
				iconCls : 'delete',
				handler : function() {
					var labelid = "";
					var row = grid.getSelections();
					if (row.length > 0) {
						labelid = row[0].get("LabelId");
						if (labelid == "00000000-0000-0000-0000-000000000000") {
							ds.remove(grid.getSelectionModel().getSelected());
							return;
						}
						Ext.Msg
								.confirm(
										'信息',
										'确定要删除？',
										function(btn) {
											if (btn == 'yes') {
												Ext.lib.Ajax
														.request(
																'POST',
																Ybz.Accountbook.DataPage
																		+ '?m=dellabel',
																{
																	success : function(
																			response) {
																		if (response.responseText == "1") {
																			ds
																					.remove(grid
																							.getSelectionModel()
																							.getSelected());
																		} else
																			Ext.Msg
																					.alert(
																							'信息',
																							"删除失败！");
																	},
																	failure : function() {
																		Ext.Msg
																				.alert(
																						"错误",
																						"系统出现问题！");
																	}
																},
																'LabelId='
																		+ labelid);
											}
										});
					} else
						Ext.Msg.alert('信息', "没有选择一行！");
				}
			},
			'-',
			{
				text : '保存',
				iconCls : 'save',
				handler : function() {
					var m = ds.modified.slice(0);
					if (m.length == 0) {
						Ext.Msg.alert('提示', '没有可保存的数据！');
						return;
					}
					for (var i = 0;i < m.length; i++) {
						var record = m[i];
						var fields = record.fields.keys;
						for (var j = 2;j < fields.length; j++) {
							var name = fields[j];
							var value = record.data[name];
							var colIndex = cm.findColumnIndex(name);
							var rowIndex = ds.indexOfId(record.id);
							if (cm.getCellEditor(colIndex) != undefined) {
								var editor = cm.getCellEditor(colIndex).field;
								if (!editor.validateValue(value)) {
									Ext.Msg.alert('提示', '请确保输入的数据正确。',
											function() {
												grid.startEditing(rowIndex,
														colIndex);
											});
									return;
								}
							}
						}
					}
					var jsonArray = [];
					Ext.each(m, function(item) {
						jsonArray.push(item.data);
					});
					Ext.lib.Ajax.request('POST', Ybz.Accountbook.DataPage
							+ '?m=savelabel', {
						success : function(response) {
							Ext.Msg.alert('信息', response.responseText,
									function() {
										ds.reload();
									});
						},
						failure : function() {
							Ext.Msg.alert("错误", "系统出现问题！");
						}
					}, 'data=' + encodeURIComponent(Ext.encode(jsonArray)));
				}
			}]);
	var grid = new Ext.grid.EditorGridPanel( {
		ds : ds,
		cm : cm,
		layout : 'fit',
		loadMask : true,
		sm : new Ext.grid.RowSelectionModel( {
			singleSelect : true
		}),
		autoExpandColumn : 'Showorder',
		clicksToEdit : 1,
		viewConfig : {
			forceFit : true
		},
		tbar : tb,
		bbar : new Ext.PagingToolbar( {
			pageSize : 15,
			store : ds,
			displayInfo : true,
			displayMsg : '显示第 {0} 条到 {1} 条记录，一共 {2} 条',
			emptyMsg : "没有记录"
		})
	});
	ds.load( {
		params : {
			start : 0,
			limit : 15
		}
	});
	var win = new Ext.Window( {
		title : '账本标签管理',
		el : 'editlabeldiv',
		layout : 'fit',
		iconCls : 'label',
		modal : true,
		width : 450,
		height : 400,
		minWidth : 450,
		minHeight : 300,
		items : [grid]
	});
	win.show();
}
Ybz.Addresslist = {
	DataPage : "DataPage/Addresslist.aspx"
};
Ybz.Addresslist.labelStore = new Ext.data.Store( {
	proxy : new Ext.data.HttpProxy( {
		url : Ybz.Addresslist.DataPage + '?m=label'
	}),
	reader : new Ext.data.JsonReader( {}, [ {
		name : 'LabelId'
	}, {
		name : 'UserId'
	}, {
		name : 'Name'
	}, {
		name : 'Showorder'
	}])
});
Ybz.Addresslist.Add = function() {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = Ext.id;
	var form = new Ext.form.FormPanel( {
		labelAlign : 'right',
		labelWidth : 100,
		frame : true,
		defaultType : 'textfield',
		loadMask : true,
		items : [ {
			xtype : "combo",
			fieldLabel : '标签分类',
			name : 'label',
			triggerAction : 'all',
			allowBlank : false,
			maxLength : 25,
			store : Ybz.Addresslist.labelStore,
			pageSize : 10,
			resizable : true,
			displayField : 'Name',
			valueField : 'LabelId',
			emptyText : '输入或者选择标签分类'
		}, {
			fieldLabel : '姓名/昵称',
			name : 'Name',
			width : 200,
			allowBlank : false,
			maxLength : 50
		}, {
			fieldLabel : '手机号码',
			name : 'MobileCode',
			width : 200,
			allowBlank : true,
			maxLength : 50
		}, {
			fieldLabel : '电话号码',
			name : 'Telephone',
			width : 200,
			allowBlank : true,
			maxLength : 50
		}, {
			fieldLabel : 'Email',
			name : 'Email',
			width : 200,
			allowBlank : true,
			vtype : 'email',
			maxLength : 50
		}, {
			fieldLabel : 'QQ',
			name : 'QQ',
			width : 100,
			allowBlank : true,
			maxLength : 50
		}, {
			fieldLabel : '地址',
			name : 'Address',
			width : 400,
			allowBlank : true,
			maxLength : 200
		}, {
			fieldLabel : '备注',
			name : 'Note',
			xtype : 'textarea',
			width : 400,
			maxLength : 250
		}],
		buttons : [{
			text : '保存',
			handler : function() {
				if (form.getForm().isValid()) {
					Ext.MessageBox
							.confirm(
									'确认框',
									'确认提交?',
									function(s) {
										if (s == 'yes') {
											var LabelId = form.getForm()
													.findField('label').value;
											form
													.getForm()
													.submit( {
														url : Ybz.Addresslist.DataPage
																+ '?m=add&LabelId='
																+ LabelId,
														waitMsg : '正在保存数据...',
														success : function(
																form, action) {
															Ext.Msg
																	.alert(
																			'信息',
																			action.result.msg);
															form
																	.findField('Name')
																	.setValue("");
															form
																	.findField('Telephone')
																	.setValue("");
															form
																	.findField('MobileCode')
																	.setValue("");
															form
																	.findField('Email')
																	.setValue("");
															form
																	.findField('QQ')
																	.setValue("");
															form
																	.findField('Address')
																	.setValue("");
															form
																	.findField('Note')
																	.setValue("");
															Ybz.Addresslist.labelStore
																	.load();
														},
														failure : function(
																form, action) {
															Ext.Msg.alert('错误',
																	'保存失败');
														}
													});
										}
									});
				} else {
					Ext.Msg.alert('错误', '请查看输入！')
				}
			}
		}]
	});
	var win = new Ext.Window( {
		title : '添加联系人',
		el : div.id,
		layout : 'fit',
		iconCls : 'add',
		modal : true,
		width : 550,
		height : 350,
		minWidth : 550,
		minHeight : 350,
		items : [form]
	});
	win.show();
}
Ybz.Addresslist.label = function() {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = Ext.id;
	var cm = new Ext.grid.ColumnModel([ {
		header : 'NO.',
		width : 15,
		renderer : function(value, cellmeta, record, rowIndex) {
			return rowIndex + 1;
		}
	}, {
		header : '编号',
		dataIndex : 'LabelId',
		hidden : true,
		width : 50
	}, {
		header : '标题',
		dataIndex : 'Name',
		sortable : true,
		width : 100,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : false
		}))
	}, {
		id : 'ShowOrder',
		header : '顺序',
		dataIndex : 'ShowOrder',
		sortable : true,
		width : 30,
		editor : new Ext.grid.GridEditor(new Ext.form.NumberField( {
			allowBlank : false,
			Showorder : false
		}))
	}]);
	var ds = new Ext.data.Store( {
		proxy : new Ext.data.HttpProxy( {
			url : Ybz.Addresslist.DataPage + '?m=listlabel'
		}),
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, [ {
			name : 'LabelId'
		}, {
			name : 'UserId'
		}, {
			name : 'Name'
		}, {
			name : 'ShowOrder'
		}]),
		pruneModifiedRecords : true
	});
	var Record = Ext.data.Record.create([ {
		name : 'LabelId',
		type : 'string'
	}, {
		name : 'UserId',
		type : 'string'
	}, {
		name : 'Name',
		type : 'string'
	}, {
		name : 'ShowOrder',
		type : 'int'
	}]);
	var tb = new Ext.Toolbar([
			'-',
			{
				text : '刷新',
				iconCls : 'refresh',
				handler : function() {
					ds.reload();
				}
			},
			'-',
			{
				text : '添加',
				iconCls : 'add',
				handler : function() {
					var dt = new Date().format("Y-m-d");
					var initValue = {
						LabelId : "00000000-0000-0000-0000-000000000000",
						UserId : "00000000-0000-0000-0000-000000000000",
						Name : "",
						ShowOrder : 0
					};
					var p = new Record(initValue);
					grid.stopEditing();
					ds.insert(0, p);
					grid.startEditing(0, 2);
					p.dirty = true;
					p.modified = initValue;
					if (ds.modified.indexOf(p) == -1) {
						ds.modified.push(p);
					}
				}
			},
			'-',
			{
				text : '删除',
				iconCls : 'delete',
				handler : function() {
					var labelid = "";
					var row = grid.getSelections();
					if (row.length > 0) {
						labelid = row[0].get("LabelId");
						if (labelid == "00000000-0000-0000-0000-000000000000") {
							ds.remove(grid.getSelectionModel().getSelected());
							return;
						}
						Ext.Msg
								.confirm(
										'信息',
										'确定要删除？',
										function(btn) {
											if (btn == 'yes') {
												Ext.lib.Ajax
														.request(
																'POST',
																'DataPage/Addresslist.aspx?m=dellabel',
																{
																	success : function(
																			response) {
																		if (response.responseText == "1") {
																			ds
																					.remove(grid
																							.getSelectionModel()
																							.getSelected());
																		} else
																			Ext.Msg
																					.alert(
																							'信息',
																							"删除失败！");
																	},
																	failure : function() {
																		Ext.Msg
																				.alert(
																						"错误",
																						"系统出现问题！");
																	}
																},
																'LabelId='
																		+ labelid);
											}
										});
					} else
						Ext.Msg.alert('信息', "没有选择一行！");
				}
			},
			'-',
			{
				text : '保存',
				iconCls : 'save',
				handler : function() {
					var m = ds.modified.slice(0);
					if (m.length == 0) {
						Ext.Msg.alert('提示', '没有可保存的数据！');
						return;
					}
					for (var i = 0;i < m.length; i++) {
						var record = m[i];
						var fields = record.fields.keys;
						for (var j = 2;j < fields.length - 1; j++) {
							var name = fields[j];
							var value = record.data[name];
							var colIndex = cm.findColumnIndex(name);
							var rowIndex = ds.indexOfId(record.id);
							if (cm.getCellEditor(colIndex) != undefined) {
								var editor = cm.getCellEditor(colIndex).field;
								if (!editor.validateValue(value)) {
									Ext.Msg.alert('提示', '请确保输入的数据正确。',
											function() {
												grid.startEditing(rowIndex,
														colIndex);
											});
									return;
								}
							}
						}
					}
					var jsonArray = [];
					Ext.each(m, function(item) {
						jsonArray.push(item.data);
					});
					Ext.lib.Ajax.request('POST', Ybz.Addresslist.DataPage
							+ '?m=savelabel', {
						success : function(response) {
							Ext.Msg.alert('信息', response.responseText,
									function() {
										ds.reload();
									});
						},
						failure : function() {
							Ext.Msg.alert("错误", "系统出现问题！");
						}
					}, 'data=' + encodeURIComponent(Ext.encode(jsonArray)));
				}
			}]);
	var grid = new Ext.grid.EditorGridPanel( {
		ds : ds,
		cm : cm,
		layout : 'fit',
		loadMask : true,
		sm : new Ext.grid.RowSelectionModel( {
			singleSelect : true
		}),
		autoExpandColumn : 'ShowOrder',
		clicksToEdit : 1,
		viewConfig : {
			forceFit : true
		},
		tbar : tb,
		bbar : new Ext.PagingToolbar( {
			pageSize : 15,
			store : ds,
			displayInfo : true,
			displayMsg : '显示第 {0} 条到 {1} 条记录，一共 {2} 条',
			emptyMsg : "没有记录"
		})
	});
	ds.load( {
		params : {
			start : 0,
			limit : 15
		}
	});
	var win = new Ext.Window( {
		title : '通讯录标签管理',
		el : div.id,
		layout : 'fit',
		iconCls : 'label',
		modal : true,
		width : 450,
		height : 400,
		minWidth : 450,
		minHeight : 300,
		items : [grid]
	});
	win.show();
}
Ybz.Addresslist.renderLabel = function(value) {
	for (var j = 0;j <= Ybz.Addresslist.labelStore.data.items.length; j++) {
		if (Ybz.Addresslist.labelStore.data.item(j) != undefined
				&& Ybz.Addresslist.labelStore.data.item(j).data.LabelId.trim() == value
						.trim())
			return Ybz.Addresslist.labelStore.data.item(j).data.Name;
	}
}
Ybz.Addresslist.ListEdit = function(divid) {
	Ybz.Addresslist.labelStore.load();
	var cm = new Ext.grid.ColumnModel([ {
		header : 'NO.',
		width : 15,
		renderer : function(value, cellmeta, record, rowIndex) {
			return rowIndex + 1;
		}
	}, {
		header : '编号',
		dataIndex : 'AddresslistId',
		hidden : true,
		width : 50
	}, {
		header : '标签',
		dataIndex : 'LabelId',
		sortable : true,
		width : 50,
		allowBlank : false,
		renderer : Ybz.Addresslist.renderLabel,
		editor : new Ext.grid.GridEditor(new Ext.form.ComboBox( {
			store : Ybz.Addresslist.labelStore,
			resizable : true,
			displayField : 'Name',
			valueField : 'LabelId',
			mode : 'remote',
			emptyText : '选择分类',
			readOnly : false,
			triggerAction : 'all'
		}))
	}, {
		header : '姓名/昵称',
		dataIndex : 'Name',
		sortable : true,
		width : 50,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : false
		}))
	}, {
		header : '手机',
		dataIndex : 'MobileCode',
		sortable : true,
		width : 50,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : true
		}))
	}, {
		header : '电话',
		dataIndex : 'Telephone',
		sortable : true,
		width : 50,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : true
		}))
	}, {
		header : 'Email',
		dataIndex : 'Email',
		sortable : true,
		width : 80,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : true,
			vtype : 'email'
		}))
	}, {
		header : 'QQ',
		dataIndex : 'QQ',
		sortable : true,
		width : 50,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : true
		}))
	}, {
		header : 'Address',
		dataIndex : 'Address',
		sortable : true,
		width : 100,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : true
		}))
	}, {
		id : 'Note',
		header : '备注',
		sortable : true,
		dataIndex : 'Note',
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 250
		}))
	}]);
	var ds = new Ext.data.Store( {
		proxy : new Ext.data.HttpProxy( {
			url : Ybz.Addresslist.DataPage + '?m=list'
		}),
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, [ {
			name : 'AddresslistId'
		}, {
			name : 'UserId'
		}, {
			name : 'LabelId'
		}, {
			name : 'Name'
		}, {
			name : 'Telephone'
		}, {
			name : 'MobileCode'
		}, {
			name : 'Email'
		}, {
			name : 'QQ'
		}, {
			name : 'Address'
		}, {
			name : 'Note'
		}, {
			name : 'Cdate'
		}]),
		pruneModifiedRecords : true
	});
	var Record = Ext.data.Record.create([ {
		name : 'AddresslistId',
		type : 'string'
	}, {
		name : 'UserId',
		type : 'string'
	}, {
		name : 'LabelId'
	}, {
		name : 'Name',
		type : 'string'
	}, {
		name : 'Telephone',
		type : 'string'
	}, {
		name : 'MobileCode',
		type : 'string'
	}, {
		name : 'Email',
		type : 'string'
	}, {
		name : 'QQ',
		type : 'string'
	}, {
		name : 'Address',
		type : 'string'
	}, {
		name : 'Note',
		type : 'string'
	}, {
		name : 'Cdate',
		type : 'string'
	}]);
	var tb = new Ext.Toolbar([
			'-',
			{
				text : '刷新',
				iconCls : 'refresh',
				handler : function() {
					ds.reload();
					Ybz.Addresslist.labelStore.load();
				}
			},
			'-',
			{
				text : '添加',
				iconCls : 'add',
				handler : function() {
					var dt = new Date().format("Y-m-d");
					var initValue = {
						AddresslistId : "00000000-0000-0000-0000-000000000000",
						UserId : "00000000-0000-0000-0000-000000000000",
						LabelId : "00000000-0000-0000-0000-000000000000",
						Name : "",
						Telephone : "0",
						MobileCode : "",
						Email : "",
						QQ : "",
						Address : "",
						Note : "",
						Cdate : new Date()
					};
					var p = new Record(initValue);
					grid.stopEditing();
					ds.insert(0, p);
					grid.startEditing(0, 4);
					p.dirty = true;
					p.modified = initValue;
					if (ds.modified.indexOf(p) == -1) {
						ds.modified.push(p);
					}
				}
			},
			'-',
			{
				text : '删除',
				iconCls : 'delete',
				id : 'adl-del-btn',
				disabled : true,
				handler : function() {
					var AddresslistId = "";
					var row = grid.getSelections();
					if (row.length > 0) {
						AddresslistId = row[0].get("AddresslistId");
						if (AddresslistId == "00000000-0000-0000-0000-000000000000") {
							ds.remove(grid.getSelectionModel().getSelected());
							return;
						}
						Ext.Msg
								.confirm(
										'信息',
										'确定要删除？',
										function(btn) {
											if (btn == 'yes') {
												Ext.lib.Ajax
														.request(
																'POST',
																Ybz.Addresslist.DataPage
																		+ '?m=del',
																{
																	success : function(
																			response) {
																		if (response.responseText == "1") {
																			ds
																					.remove(grid
																							.getSelectionModel()
																							.getSelected());
																		} else
																			Ext.Msg
																					.alert(
																							'信息',
																							"删除失败！");
																	},
																	failure : function() {
																		Ext.Msg
																				.alert(
																						"错误",
																						"系统出现问题！");
																	}
																},
																'AddresslistId='
																		+ AddresslistId);
											}
										});
					} else
						Ext.Msg.alert('信息', "没有选择一行！");
				}
			},
			'-',
			{
				text : '保存',
				iconCls : 'save',
				handler : function() {
					var m = ds.modified.slice(0);
					if (m.length == 0) {
						Ext.Msg.alert('提示', '没有可保存的数据！');
						return;
					}
					for (var i = 0;i < m.length; i++) {
						var record = m[i];
						var fields = record.fields.keys;
						for (var j = 3;j < fields.length - 1; j++) {
							var name = fields[j];
							var value = record.data[name];
							var colIndex = cm.findColumnIndex(name);
							var rowIndex = ds.indexOfId(record.id);
							if (cm.getCellEditor(colIndex) != undefined) {
								var editor = cm.getCellEditor(colIndex).field;
								if (!editor.validateValue(value)) {
									Ext.Msg.alert('提示', '请确保输入的数据正确。',
											function() {
												grid.startEditing(rowIndex,
														colIndex);
											});
									return;
								}
							}
						}
					}
					var jsonArray = [];
					Ext.each(m, function(item) {
						jsonArray.push(item.data);
					});
					Ext.lib.Ajax.request('POST', Ybz.Addresslist.DataPage
							+ '?m=save', {
						success : function(response) {
							Ext.Msg.alert('信息', response.responseText,
									function() {
										ds.reload();
									});
						},
						failure : function() {
							Ext.Msg.alert("错误", "系统出现问题！");
						}
					}, 'data=' + encodeURIComponent(Ext.encode(jsonArray)));
				}
			}]);
	var grid = new Ext.grid.EditorGridPanel( {
		el : divid,
		ds : ds,
		cm : cm,
		layout : 'fit',
		loadMask : true,
		sm : new Ext.grid.RowSelectionModel( {
			singleSelect : true
		}),
		autoExpandColumn : 'Note',
		clicksToEdit : 1,
		viewConfig : {
			forceFit : true
		},
		tbar : tb,
		bbar : new Ext.PagingToolbar( {
			pageSize : 20,
			store : ds,
			displayInfo : true,
			displayMsg : '显示第 {0} 条到 {1} 条记录，一共 {2} 条',
			emptyMsg : "没有记录"
		})
	});
	grid.render();
	ds.load( {
		params : {
			start : 0,
			limit : 20
		}
	});
	grid.getSelectionModel().on('selectionchange', function() {
		if (this.hasSelection()) {
			Ext.getCmp('adl-del-btn').setDisabled(false);
		} else {
			Ext.getCmp('adl-del-btn').setDisabled(true);
		}
	});
	return grid;
}
Ybz.Favorite = {
	DataPage : "DataPage/Favorite.aspx"
};
Ybz.Favorite.labelStore = new Ext.data.Store( {
	proxy : new Ext.data.HttpProxy( {
		url : Ybz.Favorite.DataPage + '?m=label'
	}),
	reader : new Ext.data.JsonReader( {}, [ {
		name : 'LabelId'
	}, {
		name : 'UserId'
	}, {
		name : 'Name'
	}, {
		name : 'Showorder'
	}])
});
Ybz.Favorite.Add = function() {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = Ext.id;
	var form = new Ext.form.FormPanel( {
		labelAlign : 'right',
		labelWidth : 100,
		frame : true,
		defaultType : 'textfield',
		loadMask : true,
		items : [ {
			xtype : "combo",
			fieldLabel : '标签分类',
			name : 'label',
			triggerAction : 'all',
			allowBlank : false,
			maxLength : 25,
			store : Ybz.Favorite.labelStore,
			pageSize : 10,
			resizable : true,
			displayField : 'Name',
			valueField : 'LabelId',
			emptyText : '输入或者选择标签分类'
		}, {
			fieldLabel : '标题',
			name : 'Title',
			width : 200,
			allowBlank : false,
			maxLength : 100
		}, {
			fieldLabel : '网址URL',
			name : 'URL',
			width : 200,
			allowBlank : false,
			maxLength : 150
		}, {
			fieldLabel : '备注',
			name : 'Note',
			xtype : 'textarea',
			width : 400,
			maxLength : 250
		}, {
			fieldLabel : '是否隐藏',
			boxLabel : '选择不公开，只有你登陆后可以看见~',
			xtype : 'checkbox',
			name : 'sishide',
			inputValue : '1',
			value : '0',
			checked : false,
			width : 'auto',
			style : 'margin-left:10px;'
		}],
		buttons : [{
			text : '保存',
			handler : function() {
				if (form.getForm().isValid()) {
					Ext.MessageBox
							.confirm(
									'确认框',
									'确认提交?',
									function(s) {
										if (s == 'yes') {
											var ishide = "0";
											if (form.getForm()
													.findField('sishide').checked)
												ishide = "1";
											var LabelId = form.getForm()
													.findField('label').value;
											form
													.getForm()
													.submit( {
														url : Ybz.Favorite.DataPage
																+ '?m=add&ishide='
																+ ishide
																+ '&LabelId='
																+ LabelId,
														waitMsg : '正在保存数据...',
														success : function(
																form, action) {
															Ext.Msg
																	.alert(
																			'信息',
																			action.result.msg);
															form
																	.findField('Title')
																	.setValue("");
															form
																	.findField('URL')
																	.setValue("");
															form
																	.findField('Note')
																	.setValue("");
															Ybz.Favorite.labelStore
																	.load();
														},
														failure : function(
																form, action) {
															Ext.Msg.alert('错误',
																	'保存失败');
														}
													});
										}
									});
				} else {
					Ext.Msg.alert('错误', '请查看输入！')
				}
			}
		}]
	});
	var win = new Ext.Window( {
		title : '添加网址',
		el : div.id,
		layout : 'fit',
		iconCls : 'add',
		modal : true,
		width : 550,
		height : 280,
		minWidth : 550,
		minHeight : 280,
		items : [form]
	});
	win.show();
}
Ybz.Favorite.label = function() {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = Ext.id;
	var cm = new Ext.grid.ColumnModel([ {
		header : 'NO.',
		width : 15,
		renderer : function(value, cellmeta, record, rowIndex) {
			return rowIndex + 1;
		}
	}, {
		header : '编号',
		dataIndex : 'LabelId',
		hidden : true,
		width : 50
	}, {
		header : '标题',
		dataIndex : 'Name',
		sortable : true,
		width : 100,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : false
		}))
	}, {
		id : 'ShowOrder',
		header : '顺序',
		dataIndex : 'ShowOrder',
		sortable : true,
		width : 30,
		editor : new Ext.grid.GridEditor(new Ext.form.NumberField( {
			allowBlank : false,
			Showorder : false
		}))
	}]);
	var ds = new Ext.data.Store( {
		proxy : new Ext.data.HttpProxy( {
			url : Ybz.Favorite.DataPage + '?m=listlabel'
		}),
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, [ {
			name : 'LabelId'
		}, {
			name : 'UserId'
		}, {
			name : 'Name'
		}, {
			name : 'ShowOrder'
		}]),
		pruneModifiedRecords : true
	});
	var Record = Ext.data.Record.create([ {
		name : 'LabelId',
		type : 'string'
	}, {
		name : 'UserId',
		type : 'string'
	}, {
		name : 'Name',
		type : 'string'
	}, {
		name : 'ShowOrder',
		type : 'int'
	}]);
	var tb = new Ext.Toolbar([
			'-',
			{
				text : '刷新',
				iconCls : 'refresh',
				handler : function() {
					ds.reload();
				}
			},
			'-',
			{
				text : '添加',
				iconCls : 'add',
				handler : function() {
					var dt = new Date().format("Y-m-d");
					var initValue = {
						LabelId : "00000000-0000-0000-0000-000000000000",
						UserId : "00000000-0000-0000-0000-000000000000",
						Name : "",
						ShowOrder : 0
					};
					var p = new Record(initValue);
					grid.stopEditing();
					ds.insert(0, p);
					grid.startEditing(0, 2);
					p.dirty = true;
					p.modified = initValue;
					if (ds.modified.indexOf(p) == -1) {
						ds.modified.push(p);
					}
				}
			},
			'-',
			{
				text : '删除',
				iconCls : 'delete',
				handler : function() {
					var labelid = "";
					var row = grid.getSelections();
					if (row.length > 0) {
						labelid = row[0].get("LabelId");
						if (labelid == "00000000-0000-0000-0000-000000000000") {
							ds.remove(grid.getSelectionModel().getSelected());
							return;
						}
						Ext.Msg
								.confirm(
										'信息',
										'确定要删除？',
										function(btn) {
											if (btn == 'yes') {
												Ext.lib.Ajax
														.request(
																'POST',
																'DataPage/Favorite.aspx?m=dellabel',
																{
																	success : function(
																			response) {
																		if (response.responseText == "1") {
																			ds
																					.remove(grid
																							.getSelectionModel()
																							.getSelected());
																		} else
																			Ext.Msg
																					.alert(
																							'信息',
																							"删除失败！");
																	},
																	failure : function() {
																		Ext.Msg
																				.alert(
																						"错误",
																						"系统出现问题！");
																	}
																},
																'LabelId='
																		+ labelid);
											}
										});
					} else
						Ext.Msg.alert('信息', "没有选择一行！");
				}
			},
			'-',
			{
				text : '保存',
				iconCls : 'save',
				handler : function() {
					var m = ds.modified.slice(0);
					if (m.length == 0) {
						Ext.Msg.alert('提示', '没有可保存的数据！');
						return;
					}
					for (var i = 0;i < m.length; i++) {
						var record = m[i];
						var fields = record.fields.keys;
						for (var j = 2;j < fields.length - 1; j++) {
							var name = fields[j];
							var value = record.data[name];
							var colIndex = cm.findColumnIndex(name);
							var rowIndex = ds.indexOfId(record.id);
							if (cm.getCellEditor(colIndex) != undefined) {
								var editor = cm.getCellEditor(colIndex).field;
								if (!editor.validateValue(value)) {
									Ext.Msg.alert('提示', '请确保输入的数据正确。',
											function() {
												grid.startEditing(rowIndex,
														colIndex);
											});
									return;
								}
							}
						}
					}
					var jsonArray = [];
					Ext.each(m, function(item) {
						jsonArray.push(item.data);
					});
					Ext.lib.Ajax.request('POST', Ybz.Favorite.DataPage
							+ '?m=savelabel', {
						success : function(response) {
							Ext.Msg.alert('信息', response.responseText,
									function() {
										ds.reload();
									});
						},
						failure : function() {
							Ext.Msg.alert("错误", "系统出现问题！");
						}
					}, 'data=' + encodeURIComponent(Ext.encode(jsonArray)));
				}
			}]);
	var grid = new Ext.grid.EditorGridPanel( {
		ds : ds,
		cm : cm,
		layout : 'fit',
		loadMask : true,
		sm : new Ext.grid.RowSelectionModel( {
			singleSelect : true
		}),
		autoExpandColumn : 'ShowOrder',
		clicksToEdit : 1,
		viewConfig : {
			forceFit : true
		},
		tbar : tb,
		bbar : new Ext.PagingToolbar( {
			pageSize : 15,
			store : ds,
			displayInfo : true,
			displayMsg : '显示第 {0} 条到 {1} 条记录，一共 {2} 条',
			emptyMsg : "没有记录"
		})
	});
	ds.load( {
		params : {
			start : 0,
			limit : 15
		}
	});
	var win = new Ext.Window( {
		title : '收藏夹标签管理',
		el : div.id,
		layout : 'fit',
		iconCls : 'label',
		modal : true,
		width : 450,
		height : 400,
		minWidth : 450,
		minHeight : 300,
		items : [grid]
	});
	win.show();
}
Ybz.Favorite.renderLabel = function(value) {
	for (var j = 0;j <= Ybz.Favorite.labelStore.data.items.length; j++) {
		if (Ybz.Favorite.labelStore.data.item(j) != undefined
				&& Ybz.Favorite.labelStore.data.item(j).data.LabelId.trim() == value
						.trim())
			return Ybz.Favorite.labelStore.data.item(j).data.Name;
	}
}
Ybz.Favorite.ListEdit = function(divid) {
	Ybz.Favorite.labelStore.load();
	var cm = new Ext.grid.ColumnModel([ {
		header : 'NO.',
		width : 15,
		renderer : function(value, cellmeta, record, rowIndex) {
			return rowIndex + 1;
		}
	}, {
		header : '编号',
		dataIndex : 'FavoriteId',
		hidden : true,
		width : 50
	}, {
		header : '标签',
		dataIndex : 'LabelId',
		sortable : true,
		width : 50,
		allowBlank : false,
		renderer : Ybz.Favorite.renderLabel,
		editor : new Ext.grid.GridEditor(new Ext.form.ComboBox( {
			store : Ybz.Favorite.labelStore,
			resizable : true,
			displayField : 'Name',
			valueField : 'LabelId',
			mode : 'remote',
			emptyText : '选择分类',
			readOnly : false,
			triggerAction : 'all'
		}))
	}, {
		header : '标题',
		dataIndex : 'Title',
		sortable : true,
		width : 50,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : false
		}))
	}, {
		header : '网址URl',
		dataIndex : 'URL',
		sortable : true,
		width : 50,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 200,
			allowBlank : false
		}))
	}, {
		id : 'Note',
		header : '备注',
		sortable : true,
		dataIndex : 'Note',
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 120
		}))
	}, {
		header : '隐藏',
		dataIndex : 'IsHide',
		sortable : true,
		width : 20,
		renderer : Ybz.renderIsHide,
		editor : new Ext.grid.GridEditor(new Ext.form.Checkbox( {
			allowBlank : false
		}))
	}]);
	var ds = new Ext.data.Store( {
		proxy : new Ext.data.HttpProxy( {
			url : Ybz.Favorite.DataPage + '?m=list'
		}),
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, [ {
			name : 'FavoriteId'
		}, {
			name : 'UserId'
		}, {
			name : 'LabelId'
		}, {
			name : 'Title'
		}, {
			name : 'URL'
		}, {
			name : 'Note'
		}, {
			name : 'IsHide'
		}]),
		pruneModifiedRecords : true
	});
	var Record = Ext.data.Record.create([ {
		name : 'FavoriteId',
		type : 'string'
	}, {
		name : 'UserId',
		type : 'string'
	}, {
		name : 'LabelId'
	}, {
		name : 'Title',
		type : 'string'
	}, {
		name : 'URL',
		type : 'string'
	}, {
		name : 'Note',
		type : 'string'
	}, {
		name : 'IsHide',
		type : 'Boolean'
	}]);
	var tb = new Ext.Toolbar([
			'-',
			{
				text : '刷新',
				iconCls : 'refresh',
				handler : function() {
					ds.reload();
					Ybz.Favorite.labelStore.load();
				}
			},
			'-',
			{
				text : '添加',
				iconCls : 'add',
				handler : function() {
					var dt = new Date().format("Y-m-d");
					var initValue = {
						FavoriteId : "00000000-0000-0000-0000-000000000000",
						UserId : "00000000-0000-0000-0000-000000000000",
						LabelId : "00000000-0000-0000-0000-000000000000",
						Title : "",
						URL : "",
						Note : "",
						IsHide : false
					};
					var p = new Record(initValue);
					grid.stopEditing();
					ds.insert(0, p);
					grid.startEditing(0, 4);
					p.dirty = true;
					p.modified = initValue;
					if (ds.modified.indexOf(p) == -1) {
						ds.modified.push(p);
					}
				}
			},
			'-',
			{
				text : '删除',
				iconCls : 'delete',
				id : 'f-del-btn',
				disabled : true,
				handler : function() {
					var FavoriteId = "";
					var row = grid.getSelections();
					if (row.length > 0) {
						FavoriteId = row[0].get("FavoriteId");
						if (FavoriteId == "00000000-0000-0000-0000-000000000000") {
							ds.remove(grid.getSelectionModel().getSelected());
							return;
						}
						Ext.Msg
								.confirm(
										'信息',
										'确定要删除？',
										function(btn) {
											if (btn == 'yes') {
												Ext.lib.Ajax
														.request(
																'POST',
																Ybz.Favorite.DataPage
																		+ '?m=del',
																{
																	success : function(
																			response) {
																		if (response.responseText == "1") {
																			ds
																					.remove(grid
																							.getSelectionModel()
																							.getSelected());
																		} else
																			Ext.Msg
																					.alert(
																							'信息',
																							"删除失败！");
																	},
																	failure : function() {
																		Ext.Msg
																				.alert(
																						"错误",
																						"系统出现问题！");
																	}
																},
																'FavoriteId='
																		+ FavoriteId);
											}
										});
					} else
						Ext.Msg.alert('信息', "没有选择一行！");
				}
			},
			'-',
			{
				text : '保存',
				iconCls : 'save',
				handler : function() {
					var m = ds.modified.slice(0);
					if (m.length == 0) {
						Ext.Msg.alert('提示', '没有可保存的数据！');
						return;
					}
					for (var i = 0;i < m.length; i++) {
						var record = m[i];
						var fields = record.fields.keys;
						for (var j = 3;j < fields.length - 1; j++) {
							var name = fields[j];
							var value = record.data[name];
							var colIndex = cm.findColumnIndex(name);
							var rowIndex = ds.indexOfId(record.id);
							if (cm.getCellEditor(colIndex) != undefined) {
								var editor = cm.getCellEditor(colIndex).field;
								if (!editor.validateValue(value)) {
									Ext.Msg.alert('提示', '请确保输入的数据正确。',
											function() {
												grid.startEditing(rowIndex,
														colIndex);
											});
									return;
								}
							}
						}
					}
					var jsonArray = [];
					Ext.each(m, function(item) {
						jsonArray.push(item.data);
					});
					Ext.lib.Ajax.request('POST', Ybz.Favorite.DataPage
							+ '?m=save', {
						success : function(response) {
							Ext.Msg.alert('信息', response.responseText,
									function() {
										ds.reload();
									});
						},
						failure : function() {
							Ext.Msg.alert("错误", "系统出现问题！");
						}
					}, 'data=' + encodeURIComponent(Ext.encode(jsonArray)));
				}
			}]);
	var grid = new Ext.grid.EditorGridPanel( {
		el : divid,
		ds : ds,
		cm : cm,
		layout : 'fit',
		loadMask : true,
		sm : new Ext.grid.RowSelectionModel( {
			singleSelect : true
		}),
		autoExpandColumn : 'Note',
		clicksToEdit : 1,
		viewConfig : {
			forceFit : true
		},
		tbar : tb,
		bbar : new Ext.PagingToolbar( {
			pageSize : 20,
			store : ds,
			displayInfo : true,
			displayMsg : '显示第 {0} 条到 {1} 条记录，一共 {2} 条',
			emptyMsg : "没有记录"
		})
	});
	grid.render();
	ds.load( {
		params : {
			start : 0,
			limit : 20
		}
	});
	grid.getSelectionModel().on('selectionchange', function() {
		if (this.hasSelection()) {
			Ext.getCmp('f-del-btn').setDisabled(false);
		} else {
			Ext.getCmp('f-del-btn').setDisabled(true);
		}
	});
	return grid;
}
Ybz.Notepad = {
	DataPage : "DataPage/Notepad.aspx"
};
Ybz.Notepad.labelStore = new Ext.data.Store( {
	proxy : new Ext.data.HttpProxy( {
		url : Ybz.Notepad.DataPage + '?m=label'
	}),
	reader : new Ext.data.JsonReader( {}, [ {
		name : 'LabelId'
	}, {
		name : 'UserId'
	}, {
		name : 'Name'
	}, {
		name : 'Showorder'
	}])
});
Ybz.Notepad.Add = function() {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = Ext.id;
	var form = new Ext.form.FormPanel( {
		labelAlign : 'right',
		labelWidth : 60,
		frame : true,
		defaultType : 'textfield',
		loadMask : true,
		items : [
				{
					xtype : "combo",
					fieldLabel : '标签分类',
					name : 'label',
					triggerAction : 'all',
					allowBlank : false,
					maxLength : 25,
					store : Ybz.Notepad.labelStore,
					pageSize : 10,
					resizable : true,
					displayField : 'Name',
					valueField : 'LabelId',
					emptyText : '输入或者选择标签分类'
				},
				{
					xtype : 'datefield',
					fieldLabel : '日期',
					name : 'CDate',
					format : 'Y-m-d',
					allowBlank : false,
					value : (new Date()).format('Y-m-d')
				},
				{
					fieldLabel : '标题',
					name : 'Title',
					width : 250,
					allowBlank : false,
					maxLength : 100
				},
				{
					layout : 'form',
					xtype : 'fieldset',
					title : '心情',
					autoHeight : true,
					defaultType : 'radio',
					hideLabels : true,
					style : 'margin-left:50px;margin-right:20px',
					items : [
							{
								xtype : 'panel',
								html : "当前心情&nbsp;&nbsp;<img id='cheart' border=1  src='images/heart/wx.gif' alt='微笑'>"
							}, {
								xtype : 'textfield',
								name : 'heart',
								value : 'wx.gif',
								hidden : true
							}, {
								xtype : 'panel',
								html : Ybz.heartimg
							}]
				}, {
					layout : 'form',
					xtype : 'htmleditor',
					fieldLabel : '内容',
					labelAlign : 'top',
					name : 'Content',
					anchor : '98%',
					allowBlank : false,
					enableSourceEdit : false
				}, {
					fieldLabel : '是否隐藏',
					boxLabel : '选择不公开，只有你登陆后可以看见~',
					xtype : 'checkbox',
					name : 'sishide',
					inputValue : '1',
					value : '0',
					checked : false,
					width : 'auto',
					style : 'margin-left:10px;'
				}],
		buttons : [{
			text : '保存',
			handler : function() {
				if (form.getForm().isValid()) {
					Ext.MessageBox
							.confirm(
									'确认框',
									'确认提交?',
									function(s) {
										if (s == 'yes') {
											var LabelId = form.getForm()
													.findField('label').value;
											var IsHide = "0";
											if (form.getForm()
													.findField('sishide').checked)
												IsHide = "1";
											form
													.getForm()
													.submit( {
														url : Ybz.Notepad.DataPage
																+ '?m=add&LabelId='
																+ LabelId
																+ '&IsHide='
																+ IsHide
																+ '&sjs='
																+ new Date(),
														waitMsg : '正在保存数据...',
														success : function(
																form, action) {
															Ext.Msg
																	.alert(
																			'信息',
																			action.result.msg);
															form
																	.findField('Title')
																	.setValue("");
															form
																	.findField('Content')
																	.setValue("");
															Ybz.Notepad.labelStore
																	.load();
														},
														failure : function(
																form, action) {
															Ext.Msg.alert('错误',
																	'保存失败');
														}
													});
										}
									});
				} else {
					Ext.Msg.alert('错误', '请查看输入！')
				}
			}
		}]
	});
	var win = new Ext.Window( {
		title : '写日记文章',
		el : div.id,
		layout : 'fit',
		iconCls : 'add',
		modal : true,
		width : 650,
		height : 600,
		minWidth : 650,
		minHeight : 600,
		items : [form]
	});
	win.show();
}
Ybz.Notepad.Update = function(record, grid) {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var div = Ext.DomHelper.append('content', {
		tag : 'div',
		id : Ext.id
	});
	var form = new Ext.form.FormPanel( {
		labelAlign : 'right',
		labelWidth : 60,
		frame : true,
		defaultType : 'textfield',
		loadMask : true,
		items : [
				{
					xtype : "combo",
					fieldLabel : '标签分类',
					name : 'label',
					triggerAction : 'all',
					allowBlank : false,
					maxLength : 25,
					value : record.data["LabelId"],
					store : Ybz.Notepad.labelStore,
					pageSize : 10,
					resizable : true,
					displayField : 'Name',
					valueField : 'LabelId',
					emptyText : '输入或者选择标签分类'
				},
				{
					xtype : 'datefield',
					fieldLabel : '日期',
					name : 'CDate',
					format : 'Y-m-d',
					allowBlank : false,
					value : record.data["CDate"].format('Y-m-d')
				},
				{
					fieldLabel : '标题',
					name : 'Title',
					width : 250,
					allowBlank : false,
					maxLength : 150,
					value : record.data["Title"]
				},
				{
					layout : 'form',
					xtype : 'fieldset',
					title : '心情',
					autoHeight : true,
					defaultType : 'radio',
					hideLabels : true,
					style : 'margin-left:50px;margin-right:20px',
					items : [
							{
								xtype : 'panel',
								html : "当前心情&nbsp;&nbsp;<img id='cheart' border=1  src='images/heart/"
										+ record.data['Heart'] + "' alt='微笑'>"
							}, {
								xtype : 'textfield',
								name : 'heart',
								value : record.data["Heart"],
								hidden : true
							}, {
								xtype : 'panel',
								html : Ybz.heartimg
							}, {
								xtype : 'textfield',
								name : 'NotepadId',
								value : record.data["NotepadId"],
								hidden : true
							}]
				}, {
					layout : 'form',
					xtype : 'htmleditor',
					fieldLabel : '内容',
					labelAlign : 'top',
					name : 'Content',
					anchor : '98%',
					allowBlank : false,
					value : record.data["Content"]
				}, {
					fieldLabel : '是否隐藏',
					boxLabel : '选择不公开，只有你登陆后可以看见~',
					xtype : 'checkbox',
					name : 'sishide',
					inputValue : '1',
					value : '0',
					checked : record.data["IsHide"],
					width : 'auto',
					style : 'margin-left:10px;'
				}],
		buttons : [{
			text : '修改保存',
			handler : function() {
				if (form.getForm().isValid()) {
					Ext.MessageBox
							.confirm(
									'确认框',
									'确认提交?',
									function(s) {
										if (s == 'yes') {
											var LabelId = form.getForm()
													.findField('label').value;
											var IsHide = "0";
											if (form.getForm()
													.findField('sishide').checked)
												IsHide = "1";
											form
													.getForm()
													.submit( {
														url : Ybz.Notepad.DataPage
																+ '?m=update&LabelId='
																+ LabelId
																+ '&IsHide='
																+ IsHide,
														waitMsg : '正在保存数据...',
														success : function(
																form, action) {
															Ext.Msg
																	.alert(
																			'信息',
																			action.result.msg);
															grid.store.reload();
															Ybz.Notepad.labelStore
																	.load();
														},
														failure : function(
																form, action) {
															Ext.Msg.alert('错误',
																	'保存失败');
														}
													});
										}
									});
				} else {
					Ext.Msg.alert('错误', '请查看输入！')
				}
			}
		}]
	});
	var win = new Ext.Window( {
		title : '修改日记文章',
		el : div.id,
		layout : 'fit',
		iconCls : 'edit',
		modal : true,
		width : 650,
		height : 620,
		minWidth : 650,
		minHeight : 620,
		items : [form]
	});
	win.show();
}
Ybz.Notepad.label = function() {
	if (!Ybz.User.isLogin()) {
		Ybz.User.Login();
		return;
	}
	var div = Ext.DomHelper.append('content', {
		tag : 'div'
	});
	div.id = Ext.id;
	var cm = new Ext.grid.ColumnModel([ {
		header : 'NO.',
		width : 15,
		renderer : function(value, cellmeta, record, rowIndex) {
			return rowIndex + 1;
		}
	}, {
		header : '编号',
		dataIndex : 'LabelId',
		hidden : true,
		width : 50
	}, {
		header : '标题',
		dataIndex : 'Name',
		sortable : true,
		width : 100,
		editor : new Ext.grid.GridEditor(new Ext.form.TextField( {
			maxLength : 50,
			allowBlank : false
		}))
	}, {
		id : 'ShowOrder',
		header : '顺序',
		dataIndex : 'ShowOrder',
		sortable : true,
		width : 30,
		editor : new Ext.grid.GridEditor(new Ext.form.NumberField( {
			allowBlank : false,
			Showorder : false
		}))
	}]);
	var ds = new Ext.data.Store( {
		proxy : new Ext.data.HttpProxy( {
			url : Ybz.Notepad.DataPage + '?m=listlabel'
		}),
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, [ {
			name : 'LabelId'
		}, {
			name : 'UserId'
		}, {
			name : 'Name'
		}, {
			name : 'ShowOrder'
		}]),
		pruneModifiedRecords : true
	});
	var Record = Ext.data.Record.create([ {
		name : 'LabelId',
		type : 'string'
	}, {
		name : 'UserId',
		type : 'string'
	}, {
		name : 'Name',
		type : 'string'
	}, {
		name : 'ShowOrder',
		type : 'int'
	}]);
	var tb = new Ext.Toolbar([
			'-',
			{
				text : '刷新',
				iconCls : 'refresh',
				handler : function() {
					ds.reload();
				}
			},
			'-',
			{
				text : '添加',
				iconCls : 'add',
				handler : function() {
					var dt = new Date().format("Y-m-d");
					var initValue = {
						LabelId : "00000000-0000-0000-0000-000000000000",
						UserId : "00000000-0000-0000-0000-000000000000",
						Name : "",
						ShowOrder : 0
					};
					var p = new Record(initValue);
					grid.stopEditing();
					ds.insert(0, p);
					grid.startEditing(0, 2);
					p.dirty = true;
					p.modified = initValue;
					if (ds.modified.indexOf(p) == -1) {
						ds.modified.push(p);
					}
				}
			},
			'-',
			{
				text : '删除',
				iconCls : 'delete',
				handler : function() {
					var labelid = "";
					var row = grid.getSelections();
					if (row.length > 0) {
						labelid = row[0].get("LabelId");
						if (labelid == "00000000-0000-0000-0000-000000000000") {
							ds.remove(grid.getSelectionModel().getSelected());
							return;
						}
						Ext.Msg
								.confirm(
										'信息',
										'确定要删除？',
										function(btn) {
											if (btn == 'yes') {
												Ext.lib.Ajax
														.request(
																'POST',
																'DataPage/Notepad.aspx?m=dellabel',
																{
																	success : function(
																			response) {
																		if (response.responseText == "1") {
																			ds
																					.remove(grid
																							.getSelectionModel()
																							.getSelected());
																		} else
																			Ext.Msg
																					.alert(
																							'信息',
																							"删除失败！");
																	},
																	failure : function() {
																		Ext.Msg
																				.alert(
																						"错误",
																						"系统出现问题！");
																	}
																},
																'LabelId='
																		+ labelid);
											}
										});
					} else
						Ext.Msg.alert('信息', "没有选择一行！");
				}
			},
			'-',
			{
				text : '保存',
				iconCls : 'save',
				handler : function() {
					var m = ds.modified.slice(0);
					if (m.length == 0) {
						Ext.Msg.alert('提示', '没有可保存的数据！');
						return;
					}
					for (var i = 0;i < m.length; i++) {
						var record = m[i];
						var fields = record.fields.keys;
						for (var j = 2;j < fields.length - 1; j++) {
							var name = fields[j];
							var value = record.data[name];
							var colIndex = cm.findColumnIndex(name);
							var rowIndex = ds.indexOfId(record.id);
							if (cm.getCellEditor(colIndex) != undefined) {
								var editor = cm.getCellEditor(colIndex).field;
								if (!editor.validateValue(value)) {
									Ext.Msg.alert('提示', '请确保输入的数据正确。',
											function() {
												grid.startEditing(rowIndex,
														colIndex);
											});
									return;
								}
							}
						}
					}
					var jsonArray = [];
					Ext.each(m, function(item) {
						jsonArray.push(item.data);
					});
					Ext.lib.Ajax.request('POST', Ybz.Notepad.DataPage
							+ '?m=savelabel', {
						success : function(response) {
							Ext.Msg.alert('信息', response.responseText,
									function() {
										ds.reload();
									});
						},
						failure : function() {
							Ext.Msg.alert("错误", "系统出现问题！");
						}
					}, 'data=' + encodeURIComponent(Ext.encode(jsonArray)));
				}
			}]);
	var grid = new Ext.grid.EditorGridPanel( {
		ds : ds,
		cm : cm,
		layout : 'fit',
		loadMask : true,
		sm : new Ext.grid.RowSelectionModel( {
			singleSelect : true
		}),
		autoExpandColumn : 'ShowOrder',
		clicksToEdit : 1,
		viewConfig : {
			forceFit : true
		},
		tbar : tb,
		bbar : new Ext.PagingToolbar( {
			pageSize : 15,
			store : ds,
			displayInfo : true,
			displayMsg : '显示第 {0} 条到 {1} 条记录，一共 {2} 条',
			emptyMsg : "没有记录"
		})
	});
	ds.load( {
		params : {
			start : 0,
			limit : 15
		}
	});
	var win = new Ext.Window( {
		title : '记事本标签管理',
		el : div.id,
		layout : 'fit',
		iconCls : 'label',
		modal : true,
		width : 450,
		height : 400,
		minWidth : 450,
		minHeight : 300,
		items : [grid]
	});
	win.show();
}
Ybz.Notepad.renderLabel = function(value) {
	for (var j = 0;j <= Ybz.Notepad.labelStore.data.items.length; j++) {
		if (Ybz.Notepad.labelStore.data.item(j) != undefined
				&& Ybz.Notepad.labelStore.data.item(j).data.LabelId.trim() == value
						.trim())
			return Ybz.Notepad.labelStore.data.item(j).data.Name;
	}
}
Ybz.Notepad.ListEdit = function(divid) {
	var grid;
	Ybz.Notepad.labelStore.load();
	var cm = new Ext.grid.ColumnModel([ {
		header : 'NO.',
		width : 15,
		renderer : function(value, cellmeta, record, rowIndex) {
			return rowIndex + 1;
		}
	}, {
		header : '编号',
		dataIndex : 'NotepadId',
		hidden : true,
		width : 20
	}, {
		id : 'Title',
		header : '标题',
		dataIndex : 'Title',
		sortable : true
	}, {
		header : '日期',
		dataIndex : 'CDate',
		width : 30,
		sortable : true,
		renderer : Ybz.renderDate
	}, {
		header : '标签',
		dataIndex : 'LabelId',
		sortable : true,
		width : 30,
		renderer : Ybz.Notepad.renderLabel
	}, {
		header : '心情',
		dataIndex : 'Heart',
		sortable : true,
		width : 20,
		renderer : Ybz.renderHeart
	}, {
		header : '内容',
		sortable : true,
		dataIndex : 'Content',
		hidden : true
	}, {
		header : '浏览',
		dataIndex : 'BrowseAmount',
		sortable : true,
		width : 20
	}, {
		header : '回复',
		dataIndex : 'WritebackAmount',
		sortable : true,
		width : 20
	}, {
		header : '隐藏',
		dataIndex : 'IsHide',
		sortable : true,
		width : 20,
		renderer : Ybz.renderIsHide
	}]);
	var ds = new Ext.data.Store( {
		proxy : new Ext.data.HttpProxy( {
			url : Ybz.Notepad.DataPage + '?m=list'
		}),
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, [ {
			name : 'NotepadId'
		}, {
			name : 'UserId'
		}, {
			name : 'LabelId'
		}, {
			name : 'CDate'
		}, {
			name : 'Title'
		}, {
			name : 'Heart'
		}, {
			name : 'Content'
		}, {
			name : 'BrowseAmount'
		}, {
			name : 'WritebackAmount'
		}, {
			name : 'IsHide'
		}]),
		pruneModifiedRecords : true
	});
	var tb = new Ext.Toolbar([
			'-',
			{
				text : '刷新',
				iconCls : 'refresh',
				handler : function() {
					ds.reload();
				}
			},
			'-',
			{
				text : '添加',
				iconCls : 'add',
				handler : function() {
					Ybz.Notepad.Add(grid);
				}
			},
			'-',
			{
				text : '删除',
				iconCls : 'delete',
				id : 'np-del-btn',
				disabled : true,
				handler : function() {
					var NotepadId = "";
					var row = grid.getSelections();
					if (row.length > 0) {
						NotepadId = row[0].get("NotepadId");
						if (NotepadId == "00000000-0000-0000-0000-000000000000") {
							ds.remove(grid.getSelectionModel().getSelected());
							return;
						}
						Ext.Msg
								.confirm(
										'信息',
										'确定要删除？',
										function(btn) {
											if (btn == 'yes') {
												Ext.lib.Ajax
														.request(
																'POST',
																Ybz.Notepad.DataPage
																		+ '?m=del',
																{
																	success : function(
																			response) {
																		if (response.responseText == "1") {
																			ds
																					.remove(grid
																							.getSelectionModel()
																							.getSelected());
																		} else
																			Ext.Msg
																					.alert(
																							'信息',
																							"删除失败！");
																	},
																	failure : function() {
																		Ext.Msg
																				.alert(
																						"错误",
																						"系统出现问题！");
																	}
																},
																'NotepadId='
																		+ NotepadId);
											}
										});
					} else
						Ext.Msg.alert('信息', "没有选择一行！");
				}
			},
			'-',
			{
				text : '修改',
				iconCls : 'edit',
				id : 'np-edit-btn',
				disabled : true,
				handler : function() {
					Ybz.Notepad.Update(grid.getSelectionModel().getSelected(),
							grid);
				}
			}]);
	grid = new Ext.grid.GridPanel( {
		el : divid,
		store : ds,
		cm : cm,
		layout : 'fit',
		loadMask : true,
		autoExpandColumn : 'Title',
		viewConfig : {
			forceFit : true,
			enableRowBody : true,
			showPreview : true,
			getRowClass : function(record, rowIndex, p, store) {
				p.body = "<div id='p" + rowIndex
						+ "' class='listbox'><strong>内容:</strong>"
						+ record.data.Content + "<br/></div>";
				return 'x-grid3-row-expanded';
			}
		},
		tbar : tb,
		bbar : new Ext.PagingToolbar( {
			pageSize : 10,
			store : ds,
			displayInfo : true,
			displayMsg : '显示第 {0} 条到 {1} 条记录，一共 {2} 条',
			emptyMsg : "没有记录"
		})
	});
	grid.render();
	ds.load( {
		params : {
			start : 0,
			limit : 10
		}
	});
	grid.on('rowdblclick', function(grid, rowIndex, columnIndex, e) {
		Ybz.Notepad.Update(grid.getSelectionModel().getSelected(), grid);
	});
	grid.getSelectionModel().on('selectionchange', function() {
		if (this.hasSelection()) {
			Ext.getCmp('np-del-btn').setDisabled(false);
			Ext.getCmp('np-edit-btn').setDisabled(false);
		} else {
			Ext.getCmp('np-del-btn').setDisabled(true);
			Ext.getCmp('np-edit-btn').setDisabled(true);
		}
	});
	return grid;
}
Ybz.Radio = {
	DataPage : "DataPage/YBZ_Radio.aspx"
};
Ybz.Radio.Tree = new Ext.tree.TreePanel( {
	el : 'Radio-div',
	border : false,
	animate : true,
	autoScroll : true,
	enableDD : false,
	containerScroll : true,
	rootVisible : false,
	root : new Ext.tree.AsyncTreeNode( {
		id : "root",
		text : "电视广播",
		URL : '',
		children : [ {
			id : "001",
			text : "电视台",
			URL : ''
		}, {
			id : "002",
			text : "广播台",
			URL : ''
		}]
	}),
	loader : new Ext.tree.TreeLoader( {
		dataUrl : Ybz.Radio.DataPage + '?method=tree'
	})
});
Ybz.Radio.Tree
		.on(
				'click',
				function(node) {
					if (node.attributes.leaf) {
						var html = ' <iframe style="z-index:-1;" src='
								+ Ybz.Radio.DataPage
								+ '?method=showMedia&RadioId='
								+ node.attributes.RadioId
								+ ' frameborder=0 width=100% height=100%  scrolling=auto ></iframe>';
						if (node.attributes.URL.trim() != "") {
							html = ' <iframe style="z-index:-1;" src='
									+ Ybz.Radio.DataPage
									+ '?method=showRadio&RadioURL='
									+ node.attributes.URL
									+ ' frameborder=0 width=100% height=100%  scrolling=auto ></iframe>';
						}
						var tab = Ybz.tabs.items.get(node.id)
						if (tab == undefined)
							tab = Ybz.tabs.add( {
								id : node.id,
								title : node.text,
								html : html,
								closable : true,
								layout : 'fit'
							});
						if (Ybz.tabs != undefined || Ybz.tabs != null)
							Ybz.tabs.activate(tab);
					}
				});
Ybz.Radio.Tree.expand(true, false);
Ybz.Video = {
	DataPage : "DataPage/YBZ_Video.aspx"
};
Ybz.Video.Tree = new Ext.tree.TreePanel( {
	el : 'Video-div',
	border : false,
	animate : true,
	autoScroll : true,
	enableDD : false,
	containerScroll : true,
	rootVisible : false,
	root : new Ext.tree.AsyncTreeNode( {
		id : "root",
		text : "视频点播",
		children : [ {
			id : "001",
			text : "电视剧",
			URL : ''
		}, {
			id : "002",
			text : "电影"
		}, {
			id : "004",
			text : "动漫"
		}, {
			id : "003",
			text : "小品"
		}, {
			id : "005",
			text : "春节联欢晚会"
		}]
	}),
	loader : new Ext.tree.TreeLoader( {
		dataUrl : Ybz.Video.DataPage + '?method=tree'
	})
});
Ybz.Video.Tree
		.on(
				'click',
				function(node) {
					if (node.attributes.leaf) {
						var html = '<iframe src='
								+ Ybz.Video.DataPage
								+ '?VideoId='
								+ node.attributes.VideoId
								+ ' frameborder=0 width=100% height=100%  scrolling=auto ></iframe>';
						var tab = Ybz.tabs.items.get(node.id)
						if (tab == undefined)
							tab = Ybz.tabs.add( {
								id : node.id,
								title : node.text,
								html : html,
								closable : true,
								layout : 'fit'
							});
						if (Ybz.tabs != undefined || Ybz.tabs != null)
							Ybz.tabs.activate(tab);
					}
				});
Ybz.Video.Tree.expand(true, false);
Ybz.Video.Query = function() {
	var cm = new Ext.grid.ColumnModel([ {
		header : 'NO.',
		width : 15,
		renderer : function(value, cellmeta, record, rowIndex) {
			return rowIndex + 1;
		}
	}, {
		header : '编号',
		dataIndex : 'VideoId',
		hidden : true,
		width : 15
	}, {
		header : '名称',
		dataIndex : 'Title',
		width : 50,
		sortable : true
	}]);
	var ds = new Ext.data.Store( {
		proxy : new Ext.data.HttpProxy( {
			url : Ybz.Video.DataPage + '?method=Search'
		}),
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, [ {
			name : 'VideoId'
		}, {
			name : 'Title'
		}]),
		pruneModifiedRecords : true
	});
	var tb = new Ext.Toolbar(['搜索', {
		xtype : 'textfield',
		id : 'key-videosearch',
		name : 'key-videosearch',
		value : '越狱',
		allowBlank : false
	}, '-', {
		text : '查询',
		iconCls : 'search',
		handler : function() {
			ds.load( {
				params : {
					start : 0,
					limit : 30,
					sKey : Ext.get('key-videosearch').dom.value
				}
			});
		}
	}, {
		text : '全部',
		handler : function() {
			Ext.get('key-videosearch').dom.value = '';
			ds.load( {
				params : {
					start : 0,
					limit : 30,
					sKey : ''
				}
			});
		}
	}]);
	var grid = new Ext.grid.GridPanel( {
		ds : ds,
		cm : cm,
		layout : 'fit',
		loadMask : true,
		sm : new Ext.grid.RowSelectionModel( {
			singleSelect : true
		}),
		autoExpandColumn : 'Title',
		viewConfig : {
			forceFit : true
		},
		tbar : tb,
		bbar : new Ext.PagingToolbar( {
			pageSize : 30,
			store : ds,
			displayInfo : true,
			displayMsg : '',
			emptyMsg : "没有记录"
		})
	});
	grid
			.on(
					'rowdblclick',
					function(grid, rowIndex, columnIndex, e) {
						var node = grid.getSelections()[0].data;
						var html = '<iframe src='
								+ Ybz.Video.DataPage
								+ '?VideoId='
								+ node.VideoId
								+ ' frameborder=0 width=100% height=100%  scrolling=auto ></iframe>';
						var tab = Ybz.tabs.items.get(node.VideoId)
						if (tab == undefined)
							tab = Ybz.tabs.add( {
								id : node.VideoId,
								title : node.Title,
								html : html,
								closable : true,
								layout : 'fit'
							});
						if (Ybz.tabs != undefined || Ybz.tabs != null)
							Ybz.tabs.activate(tab);
					});
	ds.load( {
		params : {
			start : 0,
			limit : 30,
			sKey : ''
		}
	});
	return grid;
}
Ybz.Game = {
	DataPage : "DataPage/YBZ_Game.aspx"
};
Ybz.Game.Query = function() {
	var cmGame = new Ext.grid.ColumnModel([ {
		header : 'NO.',
		width : 15,
		renderer : function(value, cellmeta, record, rowIndex) {
			return rowIndex + 1;
		}
	}, {
		header : '编号',
		dataIndex : 'GId',
		hidden : true,
		width : 15
	}, {
		header : '名称',
		dataIndex : 'Name',
		width : 50,
		sortable : true
	}, {
		header : 'ClassId',
		dataIndex : 'ClassId',
		hidden : true,
		width : 10
	}]);
	var dsGame = new Ext.data.Store( {
		proxy : new Ext.data.HttpProxy( {
			url : Ybz.Game.DataPage + '?method=Search'
		}),
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, [ {
			name : 'GId'
		}, {
			name : 'Name'
		}, {
			name : 'ClassId'
		}]),
		pruneModifiedRecords : true
	});
	var tbGame = new Ext.Toolbar(['搜索', {
		xtype : 'textfield',
		id : 'key-gamesearch',
		name : 'key-gamesearch',
		value : '连连看',
		allowBlank : false
	}, '-', {
		text : '查询',
		iconCls : 'search',
		handler : function() {
			dsGame.load( {
				params : {
					start : 0,
					limit : 30,
					sKey : Ext.get('key-gamesearch').dom.value
				}
			});
		}
	}, {
		text : '全部',
		handler : function() {
			Ext.get('key-gamesearch').dom.value = '';
			dsGame.load( {
				params : {
					start : 0,
					limit : 30,
					sKey : ''
				}
			});
		}
	}]);
	var gridGame = new Ext.grid.GridPanel( {
		ds : dsGame,
		cm : cmGame,
		layout : 'fit',
		loadMask : true,
		sm : new Ext.grid.RowSelectionModel( {
			singleSelect : true
		}),
		autoExpandColumn : 'Name',
		viewConfig : {
			forceFit : true
		},
		tbar : tbGame,
		bbar : new Ext.PagingToolbar( {
			pageSize : 30,
			store : dsGame,
			displayInfo : true,
			displayMsg : '',
			emptyMsg : "没有记录"
		})
	});
	gridGame
			.on(
					'rowdblclick',
					function(grid, rowIndex, columnIndex, e) {
						var node = grid.getSelections()[0].data;
						var html = '<iframe src="'
								+ Ybz.Game.DataPage
								+ '?gid='
								+ node.GId
								+ '" frameborder=0 width=100% height=100%  scrolling=auto ></iframe>';
						var tab = Ybz.tabs.items.get(node.GId)
						if (tab == undefined)
							tab = Ybz.tabs.add( {
								id : node.GId,
								title : node.Name,
								html : html,
								closable : true,
								layout : 'fit'
							});
						if (Ybz.tabs != undefined || Ybz.tabs != null)
							Ybz.tabs.activate(tab);
					});
	dsGame.load( {
		params : {
			start : 0,
			limit : 30,
			sKey : ''
		}
	});
	return gridGame;
}
Ybz.PingShu = {
	DataPage : "DataPage/YBZ_PingShu.aspx"
};
Ybz.PingShu.Tree = new Ext.tree.TreePanel( {
	el : 'PingShu-div',
	border : false,
	animate : true,
	autoScroll : true,
	enableDD : false,
	containerScroll : true,
	rootVisible : false,
	root : new Ext.tree.AsyncTreeNode( {
		id : "root",
		text : "评书",
		children : [ {
			id : "shantianfangpingshuji",
			text : "单田芳评书集"
		}, {
			id : "lianlirupingshuji",
			text : "连丽如评书集"
		}, {
			id : "tianzhanyipingshuji",
			text : "田战义评书集"
		}, {
			id : "yanqingxiaoshuopingshuji",
			text : "言情小说评书集"
		}, {
			id : "yuankuochengpingshuji",
			text : "袁阔成评书集"
		}, {
			id : "zhangshaozuopingshuji",
			text : "张少佐评书集"
		}, {
			id : "wuxiaxiaoshuopingshuji",
			text : "武侠小说评书集"
		}, {
			id : "huyupingshupingshuji",
			text : "粵语评书评书集"
		}, {
			id : "liulanfangpingshuji",
			text : "刘兰芳评书集"
		}, {
			id : "sunyipingshuji",
			text : "孙一评书集"
		}, {
			id : "liaozhaigushipingshuji",
			text : "聊斋故事评书集"
		}, {
			id : "xingjing803pingshuji",
			text : "刑警803评书集"
		}, {
			id : "xiaoyaopingshuji",
			text : "逍遥评书集"
		}, {
			id : "xiangshengpingshuji",
			text : "相声评书集"
		}, {
			id : "kongbukehuanpingshuji",
			text : "恐怖科幻评书集"
		}, {
			id : "tianlianyuanpingshuji",
			text : "田连元评书集"
		}, {
			id : "baijiajiangtanpingshuji",
			text : "百家讲坛评书集"
		}, {
			id : "mingchaonaxieshierpingshuji",
			text : "明朝那些事儿评书集"
		}, {
			id : "other",
			text : "其他评书集"
		}]
	}),
	loader : new Ext.tree.TreeLoader( {
		dataUrl : Ybz.PingShu.DataPage + '?method=tree'
	})
});
Ybz.PingShu.Tree
		.on(
				'click',
				function(node) {
					if (node.attributes.leaf) {
						var html = '<iframe src='
								+ Ybz.PingShu.DataPage
								+ '?PClassId='
								+ node.attributes.PClassId
								+ '&PName='
								+ node.attributes.text
								+ '  frameborder=0 width=100% height=100%  scrolling=auto ></iframe>';
						var tab = Ybz.tabs.items.get(node.id)
						if (tab == undefined)
							tab = Ybz.tabs.add( {
								id : node.PClassId,
								title : node.text,
								html : html,
								closable : true,
								layout : 'fit'
							});
						if (Ybz.tabs != undefined || Ybz.tabs != null)
							Ybz.tabs.activate(tab);
					}
				});
Ybz.PingShu.Tree.expand(true, false);
Ybz.East = {};
Ybz.East.Tabs = new Ext.TabPanel( {
	title : '休闲娱乐',
	region : 'east',
	split : true,
	border : false,
	collapsible : true,
	width : 250,
	enableTabScroll : true,
	activeTab : 2,
	frame : true
});
Ybz.East.Tabs.add( {
	title : '电视广播',
	closable : false,
	layout : 'fit',
	items : [Ybz.Radio.Tree]
});
Ybz.East.Tabs.add( {
	title : '视频点播',
	closable : false,
	layout : 'fit',
	items : [Ybz.Video.Tree]
});
Ybz.East.Tabs.add( {
	title : '小游戏',
	closable : false,
	layout : 'fit',
	items : [Ybz.Game.Query()]
});
Ybz.East.Tabs.add( {
	title : '评书',
	closable : false,
	layout : 'fit',
	items : [Ybz.PingShu.Tree]
});
Ext.onReady(function() {
	Ext.QuickTips.init();
	Ext.get('loading').remove();
	Ext.get('loading-mask').fadeOut( {
		remove : true
	});
	Ybz.setTheme2();
	Ybz.Header();
	var viewport = new Ext.Viewport( {
		layout : 'border',
		loadMask : true,
		items : [ {
			region : 'north',
			contentEl : 'north-div',
			split : false,
			border : false,
			collapsible : false,
			height : 60
		}, {
			title : '一本帐管理',
			region : 'west',
			split : true,
			border : false,
			collapsible : true,
			width : 150,
			minSize : 10,
			maxSize : 300,
			layout : 'accordion',
			layoutConfig : {
				titleCollapse : true,
				animate : true,
				activeOnTop : false
			},
			items : [ {
				title : '我的账本',
				iconCls : 'money_box',
				contentEl : 'my-book'
			}, {
				title : '我的通讯录',
				iconCls : 'reg',
				contentEl : 'my-addresslist'
			}, {
				title : '我的记事本',
				iconCls : 'notepad',
				contentEl : 'my-notepad'
			}, {
				title : '我的网址收藏夹',
				iconCls : 'fav',
				contentEl : 'my-favorite'
			}, {
				title : '实用工具',
				iconCls : 'tool',
				contentEl : 'my-tool'
			}, {
				title : '个人设置',
				iconCls : 'member',
				contentEl : 'my-set'
			}]
		}, Ybz.tabs, Ybz.East.Tabs]
	});
	Ybz.User.setUserState();
});